MySQL - 比较组内的行

MySQL - Compare rows within group

使用 MySQL,我需要根据特定字段比较同一组内的行和 return 不匹配的行。

例如,假设我有以下 table:

cust note
1 foo0
2 foo1
2 foo2
3 foo3
3 foo3
3 foo4

我需要 return 所有具有相同 ID 但具有不同音符值的行。上面 table 的结果输出应该是:

cust note
2 foo1
2 foo2
3 foo3
3 foo4

我将如何实现这个目标?

提前致谢!

你可以为此使用子查询

SELECT DISTINCT `cust`, `note` FROM tabl2 WHERE cust IN (SELECT Cust FROM tabl2  GROUP BY cust HAVING COUNT(DISTINCT note) > 1)
cust | note
---: | :---
   2 | foo1
   2 | foo2
   3 | foo3
   3 | foo4

db<>fiddle here