Paralelo unnest () y orden de clasificación en PostgreSQL
Entiendo que usando
SELECT unnest(ARRAY[5,3,9]) as id
sin unORDER BY
cláusula, el orden del conjunto de resultados no está garantizado. Por ejemplo, podría obtener:
id
--
3
5
9
Pero, ¿qué pasa con la siguiente solicitud:
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
¿Está garantizado que el 2unnest()
las llamadas (que tienen la misma longitud) se desenrollarán en paralelo y que el índiceidx
de hecho coincidirá con la posición del elemento en la matriz?
Estoy usando PostgreSQL 9.3.3.