У меня есть столбец jsonb с именем info
, который некоторого типа имеет форму объекта: { id: 2 }
и некоторые другие типы имеют форму массива: [{ id: 2 }]
У меня есть запрос, который делает это:
SELECT * FROM users
CROSS JOIN LATERAL jsonb_array_elements(users.info)
Теперь, если у моего набора данных есть только массивы в столбце info
, проблема не возникает, но если есть набор, который не является массивом, а скорее объектом, я получаю ошибку:
ERROR: cannot extract elements from an object
Есть ли способ в PostgreSQL для этого CROSS JOIN LATERAL игнорировать строки, которые не являются массивами в столбце info
?