我有一些问题,希望你能伸出援助之手。 所以我有一些具有相反值的数据,例如:
Amount Type ID
10000 10 25
-10000 10 25
20000 11 30
30000 12 49
-30000 12 49
抱歉丑陋的桌子。
但是如何删除金额被取消的行?我希望删除10000和-10000的那些。但我不知道具体的类型和身份证号码。 (30000和-30000是同一个问题)。
有什么想法吗?我一直在寻找,但只能找到如何删除重复的行,而不是两行。
希望有道理:)
更新。感谢目前为止的解决方案! :) 可以在金额列中超过1:1,但那些类型和ID不相同。例如,第6个条目可能如下所示:
Amount Type ID
10000 10 25
-10000 10 25
20000 11 30
30000 12 49
-30000 12 49
10000 31 42
最后一个不应该删除:)希望现在有意义。
答案 0 :(得分:1)
仅基于提供的有限信息......
DELETE x
FROM my_table x
JOIN my_table y
ON y.id = x.id
AND y.type = x.type
AND y.amount = x.amount * -1;