sql не моя сильная сторона
обновление с postgres 9,6 до 10,6, и я получаю сообщение об ошибке из этого запроса:
SELECT id, (CASE WHEN jsonb_typeof(content->'user')='array' THEN jsonb_array_elements(content -> 'user')
ELSE content::jsonb->'user' END) As att FROM event;
ошибка: set returning functions are not allowed in CASE
результат, который я получаю (начиная с версии 9.6):
id, att
1, {"name": "Andrew"},
2, {"name": "Stacey"},
3, null
элемент 'user' также может иметь значение null.
Так может выглядеть столбец 'content' (любой из двух)
{"user": [{"name": "Andrew", "country_code": "GBR"}]]
{"user": null}
на этом какое-то время застряли любые просьбы о помощи