Re: [GENERAL] Row Count?
От | Thomas Reinke |
---|---|
Тема | Re: [GENERAL] Row Count? |
Дата | |
Msg-id | 37307020.62DF25F@e-softinc.com обсуждение исходный текст |
Ответ на | Re: [GENERAL] Row Count? (Bruce Tong <zztong@laxmi.ev.net>) |
Список | pgsql-general |
Bruce Tong wrote: > > > > SELECT * FROM foo WHERE ROW_COUNT < 10; > > > Is there anything like "ROW_COUNT" or "ROWCOUNT" in PostgreSQL? > > > If trying to receive 10 rows, try > > > > begin; > > declare thomas cursor for select * from foo; > > fetch 10 in thomas; > > end; > > Ooo, a cursor. I'll have to look into those. I was thinking I could just > issue "select * from foo" and then only use the first 10 results, but that > seemed like such a waste of time since there's likely to be 100's of > records. Admittedly I'm ignorant of the solution you pose and I'll have to > do some research, but it seems it too might also have the postmaster > return all of the records, of which I would only use 10. Am I wrong? Yes. It is designed explicitly for the purpose of limiting the returns. For example, if you have a database of several million records and want only 10 to be returned... For example, a piece of code that wanted to be conservative on memory usage, while handling millions of records in the database, might issue (pseudo-code): begin; declare thomas cursor for select * from foo; do res = fetch 10 in thomas; iRows = nTuples(res) process_records; while(iRows>0); end; From a coding perspective, you deal with the results of the fetch just as if they had come from the select. Hope this helps Thomas > > Bruce Tong | Got me an office; I'm there late at night. > Systems Programmer | Just send me e-mail, maybe I'll write. > Electronic Vision / FITNE | > zztong@laxmi.ev.net | -- Joe Walsh for the 21st Century -- ------------------------------------------------------------ Thomas Reinke Tel: (416) 460-7021 Director of Technology Fax: (416) 598-2319 E-Soft Inc. http://www.e-softinc.com
В списке pgsql-general по дате отправления: