【发布时间】:2011-03-15 16:44:50
【问题描述】:
我有一张表,其结构如下:
id int
userid int
status enum ('pending','approved')
dop datetime
数据如下:
id userid status dop
1 24 pending 2011-02-14 06:41:32
2 24 pending 2011-02-15 23:02:45
当我触发以下查询时:
SELECT count( userid )
FROM t1
WHERE STATUS = 'pending'
GROUP BY userid
它给我计数为'2',这是错误的,谁能告诉我这里有什么问题?以及如何将实际计数设为 1
【问题讨论】:
-
您是否尝试将
SELECT count()换成SELECT *?这样,您将看到查询的结果,并且您可能会发现计数仍然为 2 的原因。 -
这不是一个错误的结果,只要你有两行。 COUNT() 正在计算行数
-
@ggregoire:为什么这是错的......不是为什么这是错的。
-
@markus : 抱歉我不会说英语。
-
distinct without with group by 如下所示
标签: mysql