Re: [HACKERS] New feature proposal

2007-01-26 Thread Sorin Schwimmer
Dear Developers,

Thanks for your answers. I didn't know about
generate_series, but it looks to be exactly what
I was suggesting.

Regards,
Sorin Schwimmer


 

Do you Yahoo!?
Everyone is raving about the all-new Yahoo! Mail beta.
http://new.mail.yahoo.com

---(end of broadcast)---
TIP 5: don't forget to increase your free space map settings


[HACKERS] New feature proposal

2007-01-24 Thread Sorin Schwimmer
Dear Developers,

I would like to suggest the inclusion of an extension
in PostgreSQL. There are instances, I found, when one
needs to INSERT several times the same record in a
table. The front-end application can do it easy in a
loop of a sort, but on remote servers (and that's the
norm these days) it creates unnecessary network
traffic.

My suggestion is to allow INSERT to do it REPEAT x.
This should allow, in my view, the followings:
a) INSERT INTO my_table (field1, field2, field3)
   VALUES (value1, value2, value3) REPEAT 5;
should insert 5 identical rows
b) INSERT INTO my_table (field1, field2, field3)
   VALUES (x, value2/x, value3) REPEAT (x=3);
should insert the followings:
1, value2, value3
2, value2/2, value3
3, value2/3, value3

In other words, this form of INSERT shold instruct the
SQL engine to perform a for loop. Maybe instead of
REPEAT there should be another word, maybe the for
loop should allow going with a different step than
the default one and go backward as well (easy to do
with a negative step).

This suggestion comes for a practical project that I
have.
I haven't feel the need for something like that in an
UPDATE, but I can imagine that it may happen:

UPDATE my_table SET field1=value1*x WHERE condition
REPEAT (x=(SELECT repetition FROM table2 WHERE
condition2) STEP -1.5);

Best regards,
Sorin Schwimmer


 

Expecting? Get great news right away with email Auto-Check. 
Try the Yahoo! Mail Beta.
http://advision.webevents.yahoo.com/mailbeta/newmail_tools.html 

---(end of broadcast)---
TIP 4: Have you searched our list archives?

   http://archives.postgresql.org