请帮助我进行此查询,我有此数据
customeid | param
1001 | A
1001 | B
1001 | C
1002 | B
1002 | A
1003 | A
1003 | B
1004 | A
我需要区分customeid,我使用此查询,但结果不正确
SELECT
COUNT(DISTINCT IF(param not in ('A'),1,0))
FROM
table
输出结果
count
3 (from customeid 1001,1002,1003)
如果参数不在 A 中并且无法添加查询,如何区分customeid
最佳答案
你用count
if
和 distinct
来判断没有问题,但是有问题,如果满足条件就需要返回customeid
,否则需要返回null
您可以关注此查询。
SELECT
COUNT(DISTINCT IF(param not in ('A'),customeid,NULL))
FROM
table
注意
当该值为null
时,COUNT
不会累加
关于mysql - Count If MySql 具有不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51416356/