Hi,
I'd like to update some records in a table.
Those have a status_id and among other columns a varchar with a name and
a create_date.
The status_id is 0 if nothing was done with this record, yet.
For some reasons I've got double entries which I now want to flag to -1
so that they can be sorted out without actually deleting them since
there are other tables referencing them.
From every group that shares the same name all should get status_id
set to -1 where status_id = 0.
The tricky bit is:
How could I provide, that 1 of every group survives, even then when all
have status_id = 0?
Sometimes 2 of a group are touched so both have to stay.
e.g.
c_date, status_id, name
2008/01/01, 0, A --> -1
2008/01/02, 1, A --> do nothing
2008/01/03, 0, A --> -1
2008/01/01, 0, B --> do nothing (single entry)
2008/01/01, 0, C --> do nothing (oldest 0 survives)
2008/01/02, 0, C --> -1
2008/01/01, 1, D --> do nothing
2008/01/02, 1, D --> do nothing
--
Sent via pgsql-sql mailing list (pgsql-sql@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-sql