PostgreSQL v9.X ma prawdziwą „tablicę rekordów”?
To zapytanie działa poprawnie
WITH test AS (
SELECT array_agg(t) as x FROM (
SELECT 1111 as id, 'aaaaa' as cc
) AS t
) SELECT x[1] FROM test;
ale,czy mogę uzyskać dostęp do elementów recod? próbujęSELECT x[1].id
; SELECT x[1][1]
; ... nic nie działa.
PS: z Google widzimy tylko STARE rozwiązania ... Kontekst tutaj to v9.X, brak wiadomości o „tablicy rekordów”?
Próbuję też
select x[1] from (select array[row(1,2)] as x) as t;
brak rozwiązania, aby uzyskać dostęp tylko do pozycji 1 lub tylko pozycji 2.
Wskazówka, której nie mogłem śledzić:postgresql.1045698.n5.nabble.com rozwiązać problem za pomocąCREATE TYPE
... Ok, ale potrzebuję rozwiązania „wszystko w zapytaniu”. Gdzie „dynamiczne pisanie” PostgreSQL? Jak CAST lub wyrazić typ bezCREATE TYPE
klauzula?