admin 管理员组

文章数量: 887021


2024年2月29日发(作者:check约束什么意思)

count(distinct) group by用法

COUNT (DISTINCT) 和 GROUP BY 是 SQL 中常见的聚合函数和关键字,它们可以用于 SELECT 子句,用于对查询结果进行统计和分组。

COUNT (DISTINCT) 的用法

COUNT (DISTINCT) 是一个聚合函数,它的作用是返回一个基于某个列的唯一值的个数。它的语法如下:

```

SELECT COUNT(DISTINCT column_name) FROM table_name;

```

其中,column_name 是用于计算唯一值的列名。table_name 是数据来源的表名。

COUNT (DISTINCT) 实际上是在 SELECT 语句中使用的,它可以单独使用,也可以与其他聚合函数一起使用,如 SUM()、AVG()、MAX()、MIN() 等。

下面是一个例子,使用 COUNT (DISTINCT) 计算一张表中不同城市的数量:

```

SELECT COUNT(DISTINCT city) FROM customers;

```

这个查询语句返回的结果是:不同城市的数量。

GROUP BY 的用法

GROUP BY 是一个关键字,它的作用是将查询结果分组,并返回每个分组的行数或其他聚合值。GROUP BY 子句必须紧跟在 SELECT 子句之后,语法如下:

```

SELECT column_name, COUNT(*) FROM table_name GROUP BY

column_name;

```

其中,column_name 是数据分组的列名,COUNT(*) 是数分组之后每组的行数的计数器。

GROUP BY 子句的作用是基于指定的列对结果集进行分组,查询结果将按照指定的列值进行排序,每个唯一的列值将成为一个分组。对每个分组执行聚合函数可以得到每个分组的汇总数据。

下面是一个例子,使用 GROUP BY 计算一张表中每个城市的客户数量:

```

SELECT city, COUNT(*) FROM customers GROUP BY city;

```

这个查询语句返回的结果是:每个城市的客户数量。

COUNT (DISTINCT) 和 GROUP BY 的用法

当我们希望在 GROUP BY 子句中使用 COUNT (DISTINCT) 函数时,应该如何使用呢?

在 GROUP BY 子句中使用聚合函数时,必须使用特殊的语法。在

COUNT (DISTINCT) 函数中使用 GROUP BY 时,我们需要修改查询语句的语法。语法如下:

```

SELECT column_name, COUNT(DISTINCT column_name) FROM

table_name GROUP BY column_name;

```

其中,column_name 是用于计算唯一值的列名。table_name 是数据来源的表名。

下面是一个例子,使用 COUNT (DISTINCT) 和 GROUP BY 计算一张表中每个城市的不同客户数量:

```

SELECT city, COUNT(DISTINCT customer_name) FROM customers

GROUP BY city;

```

这个查询语句返回的结果是:每个城市的不同客户数量。

总结

COUNT (DISTINCT) 和 GROUP BY 都是 SQL 中常用的聚合函数和关键字。使用 COUNT (DISTINCT) 可以计算一张表中唯一值的数量,使用 GROUP BY 可以对查询结果进行分组,返回每个分组的行数或其他聚合值。它们可以一起使用,用于计算不同数据分组中唯一值的数量。


本文标签: 分组 结果 查询