ここに jsonb 列のダミーデータがあります
{
"address": [
{
"country": "US",
"extension": [
{
"extension": [
{
"valueDecimal": -71.024638,
"url": "latitude"
},
{
"url": "longitude",
"valueDecimal": 42.082543
}
],
"url": "url1"
}
],
"postalCode": "02301",
"city": "Brockton"
},
{
"country": "US",
"extension": [
{
"extension": [
{
"valueDecimal": -71.024638,
"url": "latitude"
},
{
"url": "longitude",
"valueDecimal": 42.082543
}
],
"url": "url2"
}
],
"postalCode": "02301",
"city": "Brockton"
}
]
}
次のようなものを取得したいのですがaddress->'extension'->'extension'->'valueDecimal'
、jsonでのみ機能しますが、JSONデータの配列です...私の期待する出力-
[-71.024638, -71.024638]
以下のクエリで最初の拡張機能 (つまり、JSON の最初の配列) を取得できます
SELECT elems.value FROM "patient", jsonb_array_elements(resource -> 'extension') AS elems;
問題は、内部の「拡張」(拡張オブジェクト内にある) データを取得できないことです。どんな助けでも役に立ちます。