Mysql 与GROUP BY一起使用时的计数范围(不同..)

Mysql 与GROUP BY一起使用时的计数范围(不同..),mysql,sql,group-by,distinct,Mysql,Sql,Group By,Distinct,我正在做如下的事情(例如,按州将不同的人命名为“Mark”): 我认为应该首先执行GROUPBY查询组织,这样distinct只与每个“GROUPBY”相关?基本上,“标记”能在每组中显示为“不同的”计数吗?这将仅将我的distinct表达式按行“范围”到分组,我相信…这实际上可能取决于使用distinct的位置。例如,selectdistinct COUNT(将不同于selectcount(DISTINCT) 在这种情况下,它将根据您的需要工作,并在每个组中获得不同名称的计数(即使名称在组之间

我正在做如下的事情(例如,按州将不同的人命名为“Mark”):


我认为应该首先执行GROUPBY查询组织,这样distinct只与每个“GROUPBY”相关?基本上,“标记”能在每组中显示为“不同的”计数吗?这将仅将我的distinct表达式按行“范围”到分组,我相信…

这实际上可能取决于使用
distinct
的位置。例如,
selectdistinct COUNT(
将不同于
selectcount(DISTINCT


在这种情况下,它将根据您的需要工作,并在每个组中获得不同名称的计数(即使名称在组之间不存在差异)。

您的理解是正确的。
groupby
基本上是指将一组行合并为一行(基于标准)。所有聚合函数(包括
count(distinct)
)汇总此组中的值


请注意,您使用的是“scope”一词。正如您所知,这在SQL中有一个特殊的含义。该含义指的是编译器可以理解的查询部分的列或表别名。

Hum…我将尝试一些颠倒顺序的示例。有人告诉我,它将只报告不同的“count”结果?
Select count(distinct FirstName) FROM table
GROUP BY State