我有一个名为 rates 的数据库表,其中包含四个外键和一个十进制数量(理解主键)。我正在使用MY-SQL数据库5.6.17。我怀疑数据包含反向组合的重复数量 point_id_2 和 point_id_2 。其他两个外键 method_id 和 class_id 似乎在相应的元组中进行镜像,这些元组似乎具有重复的金额。见下图。
如果你看一下外键,那就是point_id_1,point_id_2,这就是我的意思,"对称数据"。
是否可以追踪point_id_1和point_id_2互换且数量相同的所有行? 这样我就可以决定要删除哪些行。
答案 0 :(得分:0)
所以,您只想知道两个POINT_ID
字段中是否有相同数量的重复项?您只需要在您认为匹配的字段上进行简单连接:
SELECT r1.*, r2.*
FROM
rates r1
INNER JOIN rates r2
ON r1.point_ID_1 = r2.point_ID_2 AND r1.point_ID_2 = r2.point_ID_1
WHERE
r1.amount = r2.amount