gpt4 book ai didi

MySQL删除连续行中的重复项

转载 作者:可可西里 更新时间:2023-11-01 08:21:16 25 4
gpt4 key购买 nike

假设这张表:

ID ColA ColB
1 7 8
2 7 9
3 7 9
4 5 8
5 6 9
6 6 9
7 5 4

PK 是 ID 列。现在,我想删除连续行中 ColAColB 的所有重复项。

在此示例中,第 2、3 和 5、6 行包含重复项。这些应被删除,以便保留更高的 ID。

输出应该是:

ID ColA ColB
1 7 8

3 7 9
4 5 8

6 6 9
7 5 4

如何使用 mySQL 完成此操作?

谢谢,于尔根

最佳答案

SELECT 
ID
FROM
MyTable m1
WHERE
0 < (SELECT
COUNT(*)
FROM
MyTable m2
WHERE
m2.ID = m1.ID - 1 AND
m2.ColA = m1.ColA AND
m2.ColB = m1.ColB)

然后你可以使用一个

delete from MyTable where ID in ...

查询。这样它肯定可以在任何版本中工作。

关于MySQL删除连续行中的重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8243472/

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