Re: [pgsql-ru-general] hstore & plperl & массивы
От | Dmitriy Igrishin |
---|---|
Тема | Re: [pgsql-ru-general] hstore & plperl & массивы |
Дата | |
Msg-id | AANLkTim41aUYun5gRzjNgqTNvhm_gWU7JnU+WbRtGMH5@mail.gmail.com обсуждение исходный текст |
Ответы |
Re: Re: [pgsql-ru-general] hstore & plperl & массивы
|
Список | pgsql-ru-general |
Приветствую,
--
// Dmitriy.
9 марта 2011 г. 23:18 пользователь Dmitry E. Oboukhov <unera@debian.org> написал:
хочу сказать спасибо за совет посмотреть на hstore, сейчас немного
переделал тестовую БД получается очень красиво с hstore.
однако хочется с ними поработать из хранимки на plperl, вопрос: это
надо получается ее распарсивать вручную или есть готовые либы на эту
тему?
Я не знаком с Perl, но очевидно, что эта задача решается намного проще,
чем может показаться:
http://www.depesz.com/index.php/2008/10/04/deserialization-of-hstore-data-structure-in-perl/
чем может показаться:
http://www.depesz.com/index.php/2008/10/04/deserialization-of-hstore-data-structure-in-perl/
и еще вопрос по массивам:
есть столбик:
val hstore[]
хотим добавлять в него точки
array_append("val", "point") - добавляет, но поскольку точки приходят
неупорядочено, то хочется тут вкрячиться со своей процедуркой которая
при вставке делала бы упорядочивание.
соответственно бинарный поиск/сортировка нужны. можно конечно
написать самому, но может быть опять что-то есть готовое на эту тему?
можно сделать еще
ARRAY_AGG(SELECT UNNEST(val || ARRAY["point"]::hstore[]) t ORDER BY t->'key')
но это будет сортировка на каждом добавлении точки
Не совсем понятно какая решается задача.
--
. ''`. Dmitry E. Oboukhov
: :’ : email: unera@debian.org jabber://UNera@uvw.ru
`. `~’ GPGKey: 1024D / F8E26537 2006-11-21
`- 1B23 D4F8 8EC0 D902 0555 E438 AB8C 00CF F8E2 6537
--
// Dmitriy.
В списке pgsql-ru-general по дате отправления: