Re: [SQL] abusing an aggregate funct
| От | Marc Howard Zuckman |
|---|---|
| Тема | Re: [SQL] abusing an aggregate funct |
| Дата | |
| Msg-id | Pine.LNX.4.02A.9811140953190.6343-100000@fallon.classyad.com обсуждение исходный текст |
| Ответ на | abusing an aggregate funct (Thomas Good <tomg@admin.nrnet.org>) |
| Ответы |
Re: [SQL] abusing an aggregate funct
Re: [SQL] abusing an aggregate funct |
| Список | pgsql-sql |
On Sat, 14 Nov 1998, Thomas Good wrote:
> Due to the sheer girth of the table the following query, called from
> a data entry script, takes a bit of time to finish:
>
> SELECT max(rec_num) FROM crtrd1;
>
> I use this to setup `rec_num + 1' for my query number (p_key)...any
> way I can speed this up a bit? I've run vacuum analyze but the
> table size is doing me in...
>
Use a sequence to generate rec_num. See man create_sequence.
You can then use curval('sequence_name') to get the last
sequence number generated, or if you are performing an insert:
insert into crtrd1 (p_key,otherdata) values (nextval('sequence_name',moredata);
You could also create the table using nextval as the default
value of p_key. You may wish to create a unique_index on
p_key, but nextval is guaranteed not to generate duplicates
unless you allow it to rollover.
Marc Zuckman
marc@fallon.classyad.com
_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_
_ Visit The Home and Condo MarketPlace _
_ http://www.ClassyAd.com _
_ _
_ FREE basic property listings/advertisements and searches. _
_ _
_ Try our premium, yet inexpensive services for a real _
_ selling or buying edge! _
_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_
В списке pgsql-sql по дате отправления: