0

I have a table with duplicate records. Upon googling, I stumbled upon this one: How to delete duplicate rows without unique identifier.

So I followed the solution to use the ctid.

However, running it returns an error for me:

SQL Error [42703]: ERROR: column "ctid" does not exist in t2

this is the code I ran:

update my_schema.my_table
set control_flag = 'deleted'
where customer_id = 'A001'
    and date between '2019-10-30' and '2020-09-29'
    and mrr = 69
    and exists (select ctid, 1
                  from my_schema.my_table t2
                  where t2.gateway_id  = my_schema.my_table.gateway_id and
                        t2.gateway_item_id = my_schema.my_table.gateway_item_id and 
                        t2.customer_id = my_schema.my_table.customer_id and
                        t2.mrr = my_schema.my_table.mrr and 
                        t2.date = my_schema.my_table.date and 
                        t2.ctid > my_schema.my_table.ctid
               );
luc
  • 83
  • 6

0 Answers0