Значение объектов, хранящихся в виде массива - PullRequest
0 голосов
/ 22 октября 2018
Select p."objectId" as "ObjectId-Key" 
      ,d."key" as "Key"
      ,(select "label" from "Field" f where f."objectId" = d.key) as "Label"
      ,d.value
      ,(select "value" from "FieldOption" fo where fo."objectId" = d.value) as "Field_Value"
from "Product" p  
  join jsonb_each_text(p."metadata") d on TRUE
Where 
--P."productType"= 'wne'
--and 
p."reference" = 'SFX001N0112'

Я пытаюсь получить значение d.value из "FieldOption", которое иногда является ключом объекта или массивом ключей объекта.

Мне удалось получить значения, когда оно равно единице.ключ и возвращает ноль, когда это массив.

Может кто-то посоветовать, как извлечь значение объекта, если это массив.Спасибо!

Пример моего вывода: enter image description here

В строке 11 «значение» - это объект, который хранится в виде массива.Мне нужно извлечь значение объекта.

...