作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试查找并删除彼此紧接的 MySQL 行重复项,而不是查找所有重复项,即使它们不是紧接在一起也是如此。
SELECT DISTINCT(content) AS contentMsg, COUNT(*) AS cnt, `ticketId`,`date`
FROM ticketsReplies
WHERE username = 'X'
GROUP BY contentMsg, ticketId
HAVING cnt > 1
ORDER BY cnt DESC
这是我当前的代码。但是,如果一张票中只有两个相同的答案,而不是它们必须是彼此紧接着的 ID(如果您发送 POST 请求,它可能会发生,但失败,然后您刷新等),这会发现重复项。
我将如何找到彼此只有 1 个 ID 的对象。
所以找到例如1,2,3,4,5,6,7 而不是 1,3,9,11
例如如果你有
ID EMAIL
---------------------- --------------------
1 aaa
2 bbb
3 bbb
4 bbb
5 ddd
6 eee
7 aaa
8 aaa
9 bbb
如果你有这个,它应该找到以下 ID:2,3,4 但不是 9,因为它不是直接在 4 之后,即使它是重复的。
它还应该找到 7,8 但不是 1,因为它们不是紧挨着的。
最佳答案
例如:
SELECT id
FROM
( SELECT x.id FROM my_table x JOIN my_table y ON y.email = x.email AND y.id = x.id + 1 ) a
UNION
( SELECT y.id FROM my_table x JOIN my_table y ON y.email = x.email AND y.id = x.id + 1 );
关于php - 查找并删除彼此紧随其后的 MySQL 行重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51246411/
我是一名优秀的程序员,十分优秀!