Search Postgresql Archives

Re: How to write such a query

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On Sep 18, 2020, at 1:45 PM, Ken Tanzer <ken.tanzer@xxxxxxxxx> wrote:

> 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.

If “row 5” as seen by the OP has no distinguishing characteristic directing OP to edit that tuple then he’s in a world of hurt, well beyond the reach of anyone here.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]

  Powered by Linux