Re: proposal: row_to_array function

Поиск
Список
Период
Сортировка
От Pavel Stehule
Тема Re: proposal: row_to_array function
Дата
Msg-id CAFj8pRC7EV+jsOqie5QhtjVQbcX=B_FrWcVUdirweeCMZK1xBg@mail.gmail.com
обсуждение исходный текст
Ответ на Re: proposal: row_to_array function  (Jim Nasby <Jim.Nasby@BlueTreble.com>)
Ответы Re: proposal: row_to_array function  (Jim Nasby <Jim.Nasby@BlueTreble.com>)
Re: proposal: row_to_array function  (Andrew Dunstan <andrew@dunslane.net>)
Список pgsql-hackers


2015-01-16 18:03 GMT+01:00 Jim Nasby <Jim.Nasby@bluetreble.com>:
On 1/16/15 3:45 AM, Pavel Stehule wrote:
I am returning back to processing records in plpgsql.

I am thinking so it can be simply processed with transformations to array.

Now we have similar functions - hstore(row), row_to_json, ... but using of these functions can be a useless step. Any row variable can be transformed to 2D text array.

How is it useless? Why wouldn't you just use JSON and be done with it?

We can use a FOREACH IN ARRAY iteration in plpgsql (second variant is a implementation FOREACH for jsonb)

so ROW->ARRAY is shorter than ROW->JSON->ARRAY or ROW->HSTORE->ARRAY
 

Do you have some use cases you can share?

processing of NEW, OLD variables in triggers
 

There two possible transformations:

row_to_array --> [[key1, value1],[key2, value2], ...]
row_to_row_array --> [(key1, value1), (key2, value2), ... ]

If we're going to go that route, I think it makes more sense to create an actual key/value type (ie: http://pgxn.org/dist/pair/doc/pair.html) and return an array of that.

ok
 
--
Jim Nasby, Data Architect, Blue Treble Consulting
Data in Trouble? Get it in Treble! http://BlueTreble.com

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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: [PATCH] HINT: pg_hba.conf changed since last config reload
Следующее
От: Jim Nasby
Дата:
Сообщение: Re: proposal: lock_time for pg_stat_database