簡體   English   中英

從 json 對象數組中轉換 JSON: select 一行

[英]Transform JSON: select one row from array of json objects

我無法從此 JSON 數組中獲取特定行。 所以我想得到 object 提交的“類型”等於“無數據”

SQL 中是否存在取行或某些表達式的函數?

 "metadata": { "value": "JABC" },
 "force": false
 "users": [
     { "id": "111", "comment": "aaa", type: "Data" },
     { "id": "222", "comment": "bbb" , type:"No-Data"},
     { "id": "333", "comment": "ccc", type:"Data" }
 ]

您可以使用 JSON 路徑查詢:

select jsonb_path_query_first(the_column, '$.users[*] ? (@.type == "No-Data")')
from the_table

這假設該列被定義為jsonb (它應該是)。 如果不是你必須投它: the_column::jsonb

在線示例

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM