| From: | Alessandro Baggi <alessandro(dot)baggi(at)gmail(dot)com> |
|---|---|
| To: | Merlin Moncure <mmoncure(at)gmail(dot)com> |
| Cc: | pgsql-general <pgsql-general(at)postgresql(dot)org> |
| Subject: | Re: postgresql how to duplicate rows in result. |
| Date: | 2017-02-15 18:11:53 |
| Message-ID: | 46e331c9-39d9-3162-cafe-00bc1918fc73@gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-general |
Il 14/02/2017 21:51, Merlin Moncure ha scritto:
> On Tue, Feb 14, 2017 at 12:36 PM, Merlin Moncure <mmoncure(at)gmail(dot)com> wrote:
>> On Tue, Feb 14, 2017 at 12:04 PM, Alessandro Baggi
>> <alessandro(dot)baggi(at)gmail(dot)com> wrote:
>>> Hi list,
>>> sorry for my english, I will try to example as well. I've a query that joins
>>> multiple tables and return a result like:
>>>
>>> id,customers,phone,code,number
>>> 1 , aaaaaaaa,33333,123 , 2
>>> 2 , aassdsds,33322,211 , 1
>>> 3 , oooooooo,21221,221 , 1
>>>
>>>
>>> I need, where "number" field is > 1, to duplicate the row * N(number field
>>> value) with a result like this:
>>>
>>> id,customers,phone,code,number
>>> 1 , aaaaaaaa,33333,123 , 2
>>> 1 , aaaaaaaa,33333,123 , 2
>>> 2 , aassdsds,33322,211 , 1
>>> 3 , oooooooo,21221,221 , 1
>>>
>>> How I can accomplish to this problem?
>>
>> SELECT * FROM foo CROSS JOIN LATERAL (1,number);
>>
>> :-D
>
> oops -- copy/paste error
>
> SELECT * FROM foo CROSS JOIN LATERAL generate_series(1,number);
>
> merlin
> .
>
Hi Merlin,
I've tried your suggested code and with cross join and generate_series I
can generate multiple row. There is a way to put as second args a column
values? I've tried to put "table.number" column values but I got
"generate_series() does not exists". Inserting a simple int like 5 I get
5 results for each row.
I've searched on google but can't find a valid example.
Thanks in advance.
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Adrian Klaver | 2017-02-15 18:27:56 | Re: Autovacuum stuck for hours, blocking queries |
| Previous Message | Shawn Thomas | 2017-02-15 17:51:26 | Re: Can't restart Postgres |