Re: How to write such a query

Поиск
Список
Период
Сортировка
От Ken Tanzer
Тема Re: How to write such a query
Дата
Msg-id CAD3a31XmfCqz-p7Ssky53U7m4fkL0RHGZyM=RVfD5+K-RZ69Gw@mail.gmail.com
обсуждение исходный текст
Ответ на Re: How to write such a query  (Ron <ronljohnsonjr@gmail.com>)
Ответы Re: How to write such a query  (Rob Sargent <robjsargent@gmail.com>)
Re: How to write such a query  (Igor Korot <ikorot01@gmail.com>)
Список pgsql-general
> How to find what the primary key (or UNIQUE identifier) value is
> for row 5 in the recordset?

You're missing the point: as mentioned before, there is no "row 5". To
update the 5th record that you've fetched, you increment a counter each time
you fetch a row, and when you read #5, do an UPDATE X SET field1 = 'blarg'
WHERE id = <thekeyvalue>;


It seems worth mentioning for benefit of the OPs question that there _is_ a way to get a row number within a result set.  Understanding and making good use of that is an additional matter.

SELECT X.field1, Y.field2,row_number() OVER ()  from X, Y WHERE X.id = Y.id -- ORDER BY ____?

That row number is going to depend on the order of the query, so it might or might not have any meaning.  But if you queried with a primary key and a row number, you could then tie the two together and make an update based on that.

Cheers,
Ken
--
AGENCY Software  
A Free Software data system
By and for non-profits
(253) 245-3801

learn more about AGENCY or
follow the discussion.

В списке pgsql-general по дате отправления:

Предыдущее
От: Ron
Дата:
Сообщение: Re: How to write such a query
Следующее
От: Rob Sargent
Дата:
Сообщение: Re: How to write such a query