我有下表,现在我需要删除具有重复“refID”但至少有一行带有该引用的行,即我需要删除第 4 行和第 5 行。请帮助我
+----+-------+--------+--+
| ID | refID | data | |
+----+-------+--------+--+
| 1 | 1023 | aaaaaa | |
| 2 | 1024 | bbbbbb | |
| 3 | 1025 | cccccc | |
| 4 | 1023 | ffffff | |
| 5 | 1023 | gggggg | |
| 6 | 1022 | rrrrrr | |
+----+-------+--------+--+
原文由 Jeeppp 发布,翻译遵循 CC BY-SA 4.0 许可协议
这类似于 Gordon Linoff 的查询,但没有子查询:
这使用内部联接仅删除存在具有相同 refID 但 ID 较低的另一行的行。
避免子查询的好处是能够利用索引进行搜索。此查询应该在 refID + ID 上使用多列索引时执行良好。