天天看點

pg資料庫删除重複項

ctid表示資料行在它所處的表内的實體位置,ctid字段的類型是tid。盡管ctid可以快速定位資料行,每次vacuum full之後,資料行在塊内的實體位置就會移動,即ctid會發生變化,是以ctid不能作為長期的行辨別符,應該使用主鍵來辨別一個邏輯行。

select ctid, * from table 

select distinct uid,  count(*) , *  from table group by uid having count(*) > 1;

select ctid, * from table where ctid in (select min(ctid) from table  group by uid);

delete from table where ctid not in (select min(ctid) from table group by objectid);

查詢資料庫中重複項

查詢不重複的uid,uid的數量,所有資料,以uid數量大于1的資料組合

pg