我处理包含三个不同列的数据集:pile
、position
和 info
。
数据库中没有重复,但可能会发生,对于 pile
和 position
的一种组合,在 info 列中有一两个不同的文本。这些是我试图找到的条目。
我尝试了以下
SELECT COUNT(DISTINCT(`pile`, `position`)) FROM db;
但收到错误消息
ERROR 1241 (21000): Operand should contain 1 column(s)
有没有办法在两列中找到不同的值组合?
最佳答案
即使没有子选择也能工作。
SELECT
`pile`,
`position`,
COUNT(*) AS c
FROM
db
GROUP BY
`pile`,
`position`
HAVING c > 1;
上面的命令显示了 db
表中多次出现的 pile
和 position
的所有组合。
关于mysql - 查找 MySQL 数据库中两列组合的重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16190145/