Параллельные unnest () и порядок сортировки в PostgreSQL
Я понимаю, что с помощью
SELECT unnest(ARRAY[5,3,9]) as id
безORDER BY
предложение, порядок набора результатов не гарантируется. Я мог бы, например, получить:
id
--
3
5
9
Но как насчет следующего запроса:
SELECT
unnest(ARRAY[5,3,9]) as id,
unnest(ARRAY(select generate_series(1, array_length(ARRAY[5,3,9], 1)))) as idx
ORDER BY idx ASC
Гарантируется ли, что 2unnest()
вызовы (которые имеют одинаковую длину) будут развернуты параллельно и что индексidx
будет действительно соответствовать позиции элемента в массиве?
Я использую PostgreSQL 9.3.3.