5 марта 2011 г. 21:47 пользователь Dmitry E. Oboukhov
Речь идёт о полуструктурированных данных. Самое лучшее решение здесь -
использование замечательного модуля hstore, например:
dmitigr=> create table test (id serial not null, fname text, lname text);
NOTICE: CREATE TABLE will create implicit sequence "test_id_seq" for serial column "
test.id"
CREATE TABLE
dmitigr=> insert into test(fname, lname) select 'dima', 'igrishin';
INSERT 0 1
dmitigr=> insert into test(fname, lname) select 'ivan', 'ivanov';
INSERT 0 1
dmitigr=> select hstore(test) from test;
hstore
-------------------------------------------------
"id"=>"1", "fname"=>"dima", "lname"=>"igrishin"
"id"=>"2", "fname"=>"ivan", "lname"=>"ivanov"
(2 rows)
Надеюсь, суть ясна.
Подробности здесь -
http://www.postgresql.org/docs/9.0/static/hstore.htmlPS. В данном случае возможно преобразовать столбец
h из типа text[][] в hstore.