【发布时间】:2012-06-13 17:41:21
【问题描述】:
我有一张这样的桌子:
column_a column_b
foo 1
bar 1
bar 2
baz 4
我想要以下结果,包含所有行,在 column_b 中具有唯一字段值:
bar 2
baz 4
foo(0) 和 bar(1) 都具有 column_b 值“1”,因此“1”不是唯一的。
是否有一个 MySQL 表达式可以过滤所有具有唯一 column_b 的行?
也许是这样的:
select * from table where isunique(column_b)
另外:我不需要DISTINCT之类的东西!
编辑(已解决):
感谢 YaK 和 jcho360,这就是解决方案:
select column_a, column_b from table group by column_b having count(column_b) = 1
或
select column_a, column_b, COUNT(1) AS total from table group by column_b having total = 1
(感谢 andrewtweber)
【问题讨论】:
-
这些答案对您有帮助吗?标记一个为正确
-
@Nikolai Wüstemann:没问题,但我不介意 +1 ;)
-
哦,我的错,我认为你需要更多的声誉才能做到这一点。
-
不,我受够了,我完成了我的工作! ;) 谢谢!