gpt4 book ai didi

SQL查找并删除重复项

转载 作者:行者123 更新时间:2023-11-29 11:59:47 25 4
gpt4 key购买 nike

我正在使用 PostgresSQL。我的 gps 点表结构如下:

enter image description here

如您所见,id = 551071551073 以及 551075 的点具有相同的坐标。我想删除它们,所有这 3 点。但问题是我有一个包含 600K 个对象的数据集,我想删除所有用户的所有此类重复坐标。这意味着我想从用户 10 中删除那三个点。如果用户11也有相同的坐标,则不需要删除。我该怎么做?

最佳答案

您可以使用应用于聚合子查询的 exists 运算符:

DELETE FROM my_table a
WHERE EXISTS (SELECT b.lon, b.lat, b.user_id
FROM my_table b
WHERE a.lon = b.lon AND
a.lat = b.lat AND
a.user_id = b.user_id
GROUP BY b.lon, b.lat, b.user_id
HAVING COUNT(*) > 1)

关于SQL查找并删除重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30155126/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com