Re: Name/Value array to table row
От | David G. Johnston |
---|---|
Тема | Re: Name/Value array to table row |
Дата | |
Msg-id | CAKFQuwb73Lq9ehUrC1hEgFtn+q-MNK84=eTNsY_NOqM=XOzQjA@mail.gmail.com обсуждение исходный текст |
Ответ на | Name/Value array to table row (Michael Moore <michaeljmoore@gmail.com>) |
Ответы |
Re: Name/Value array to table row
|
Список | pgsql-sql |
I have an array that is a name value pair where the name is the name of a column in a table. There are about 300 columns. I want to use all of the name value pairs to construct the table row. I've thought about using jsonb or hstore. I'm sure I could write some ugly code to do this, but what is the BEST way to go about this?I.EARRAYname |value-----------animal | 'cat'lbs | 20create table animals (animal text, lbs number);
I cannot interpret your pseudo-code shorthand array stuff but I suspect the "table row construction" would be most simply implemented using "json_populate_record(...)" and preceding code can focus on transforming your array into the equivalent json. Using the array directly would likely require you to construct dynamic SQL in a plpgsql function.
Given my confusion regarding the form of your array it is not possible to advise on how such a conversion (to json) function/query would look. There are considerable array and json functions that should make doing this step reasonably straight-forward. unnest() may enter into the picture.
David J.
В списке pgsql-sql по дате отправления: