Re: Using unnest function on multi-dimensional array.

Поиск
Список
Период
Сортировка
От Pavel Stehule
Тема Re: Using unnest function on multi-dimensional array.
Дата
Msg-id 162867790910120157y348af215id5625fd1765ea5ad@mail.gmail.com
обсуждение исходный текст
Ответ на Using unnest function on multi-dimensional array.  (Nimesh Satam <nimesh.zedo@gmail.com>)
Список pgsql-performance
Hello

2009/10/12 Nimesh Satam <nimesh.zedo@gmail.com>:
> Hi,
>
> Can anybody highlight how to use unnest function from postgres 8.4 on
> multi-dimensional array?
>
> Below is the sample table structure:
>
> Table "public.multi_array_test"
>  Column  |   Type   | Modifiers
> ---------+----------+-----------
>  id      | integer  |
>  user_id | bigint[] |
>
> Sample data:
>
>   1 | {{3567559397,0},{3020933367,1},{2479094216,2},{3310282955,3}}
>
> Regards,
> Nimesh.
>

use generate_subscripts

postgres=#
create or replace function unnest2(anyarray)
returns setof anyelement as $$
select $1[i][j]
   from generate_subscripts($1,1) g1(i),
        generate_subscripts($1,2) g2(j);
$$ language sql immutable;

postgres=# select * from unnest2(array[[1,2],[3,4]]);
 unnest2
---------
       1
       2
       3
       4
(4 rows)

regards
Pavel Stehule

В списке pgsql-performance по дате отправления:

Предыдущее
От: Nimesh Satam
Дата:
Сообщение: Using unnest function on multi-dimensional array.
Следующее
От: Michal Vitecek
Дата:
Сообщение: Re: updating a row in a table with only one row