【发布时间】:2017-08-08 03:14:51
【问题描述】:
我有一个名为Aircraft 的表,其中有很多记录。问题是有些是重复的。我知道如何选择重复项及其计数:
SELECT flight_id, latitude, longitude, altitude, call_sign, measurement_time, COUNT(*)
FROM Aircraft
GROUP BY flight_id, latitude, longitude, altitude, call_sign, measurement_time
HAVING COUNT(*) > 1;
这会返回类似:
现在,我需要做的是删除重复项,每个只留下一个,这样当我再次运行查询时,所有计数都变为 1。
我知道我可以使用 DELETE 关键字,但我不确定如何从 SELECT 中删除它。
我确定我错过了一个简单的步骤,但我不想破坏我的数据库作为一个新手。
我该怎么做?
【问题讨论】:
-
没有。没有重复;所有行都不同。 什么您的预期结果是什么?
-
@wildplasser 嗯?
-
哦,等等,结果中有 count(*) 列。表是否有 PK(如代理键)?
标签: postgresql