我有一个表的结构如下:
id int
userid int
status enum ('pending','approved')
dop datetime
Run Code Online (Sandbox Code Playgroud)
数据如下:
id userid status dop
1 24 pending 2011-02-14 06:41:32
2 24 pending 2011-02-15 23:02:45
Run Code Online (Sandbox Code Playgroud)
当我触发以下查询时:
SELECT count( userid )
FROM t1
WHERE STATUS = 'pending'
GROUP BY userid
Run Code Online (Sandbox Code Playgroud)
这让我算作'2',这是错的,谁能告诉我这里有什么问题?以及如何将实数计为1
group by语句在计数后执行.请改用:
SELECT count( DISTINCT userid )
FROM t1
WHERE STATUS = 'pending'
Run Code Online (Sandbox Code Playgroud)