Stephan, That's very interesting! I didn't even know about these other "hidden" fields. How many others are there?
You're right about the xmin value. It's the same for all the dups. That could have saved me a lot of work. I built a perl script to locate the dups, pull the data, re-insert it, and then delete by old OID. What is the 'ctid' field about? It's wierd. For that matter, what is 'xmin'??? Stephan Szabo wrote: > On Sun, 5 Jan 2003, Jack Flak wrote: > >> Greetings Group, >> >> I'm running 7.1. >> >> Basically, my question is this: how do I delete an exact dup without >> deleting the original? > > You can use one of the other hidden fields. ctid will be unique for the > various rows, but I'm not sure of a good way to bulk delete them (tids > don't seem to have comparison operators so the normal ways I can think of > don't work). > > If all of the new rows were added by a single transaction (through copy > say) you'd probably be able to delete all the rows added by that > transaction using the xmin column. Find the xmin belonging to those rows > and delete all the rows having that xmin. > > > ---------------------------(end of broadcast)--------------------------- > TIP 4: Don't 'kill -9' the postmaster > ---------------------------(end of broadcast)--------------------------- TIP 2: you can get off all lists at once with the unregister command (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])