-1
我想只在存在多于两个rwos匹配规则时才能分组项目。如何才能做到这一点?仅当有多于2个相似行时才进行组合?
E.G:(由Col
分组)
Col
----
A
A
B
B
B
应返回:
Col | count(*)
---------------
A 2
A 2
B 3
它只有一次显示乙因为有3分以上的结果。
我想只在存在多于两个rwos匹配规则时才能分组项目。如何才能做到这一点?仅当有多于2个相似行时才进行组合?
E.G:(由Col
分组)
Col
----
A
A
B
B
B
应返回:
Col | count(*)
---------------
A 2
A 2
B 3
它只有一次显示乙因为有3分以上的结果。
由于MySQL没有计数结束,你需要一个内嵌视图来获取用于计数,当计数小于3,那么它只是一个工会的正常计数查询
SELECT counts.col,
counts.k
FROM test
INNER JOIN (SELECT col,
COUNT(col) k
FROM test
GROUP BY col
having count(col) < 3) counts
ON test.col = counts.col
UNION ALL
SELECT col,
COUNT(col) k
FROM test
GROUP BY col
HAVING COUNT(col) > 2
为什么A出现两次而B只出现一次? – ajreal 2012-03-24 05:18:19
@ajreal你读过这个问题了吗? _“我想只在有超过2项符合规则的项目时分组。”_ – 2012-03-24 05:18:50
我还没有尝试过任何东西。我知道如何做到这一点与自我加入加上另一个查询,但查询会变得太长,它已经嵌套在其他查询已经 – lisovaccaro 2012-03-24 05:18:51