У меня есть массивы разных размеров, и я хочу, чтобы каждое значение в массиве находилось в отдельных строках. Для этого я использовал unnest перекрестного соединения. Однако он работает, он удаляет нулевой массив.
Итак, у меня есть идентификатор столбца с разными массивами, а некоторые из них - нули, когда я делаю
select *
from table
cross join unnest (t.id) as t(order_id)
where length(order_id) = 5 or order_id is NULL
Я получаю только следующие результаты
ID | order_id |
---|---|
23deo jfr32 6582w | 23deo |
23deo jfr32 6582w | jfr32 |
23deo jfr32 6582w | 6582w |
и я хочу
ID | order_id |
---|---|
23deo jfr32 6582w | 23deo |
23deo jfr32 6582w | jfr32 |
23deo jfr32 6582w | 6582w |
null | null |
Если кто-то знает, как отключить нулевые значения, это было бы очень полезно. Я искал в Интернете и увидел, что мы могли бы включить предложение WITH ORDINALITY, но я не знаю, как это работает.