加入收藏 | 设为首页 | 会员中心 | 我要投稿 汽车网 (https://www.0577qiche.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

SQL GROUP BY 语句

发布时间:2023-06-06 13:40:55 所属栏目:MsSql教程 来源:
导读:这篇文章主要介绍了“GROUP BY语句与Aggregate函数结合使用能做什么”相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇GROUP BY语句与Aggregate函数结合使用能做什么文章都会
这篇文章主要介绍了“GROUP BY语句与Aggregate函数结合使用能做什么”相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇GROUP BY语句与Aggregate函数结合使用能做什么文章都会有所收获,下面我们一起来看看吧。

SQL GROUP BY 语句
 Aggregate 函数常常需要添加 GROUP BY 语句。

 GROUP BY语句通常与集合函数(COUNT,MAX,MIN,SUM,AVG)一起使用,以按一个或多个列对结果集进行分组。 

GROUP BY 语句
 GROUP BY 语句用于结合 Aggregate 函数,根据一个或多个列对结果集进行分组。

SQL GROUP BY 语法
SELECT column_name(s)
FROM table_name
WHERE condition
GROUP BY column_name(s)
ORDER BY column_name(s);

演示数据库
 在本教程中,我们将使用众所周知的 Northwind 样本数据库。

 下面是选自 "Customers"表的数据:

CustomerID    CustomerName    ContactName    Address    City    PostalCode    Country
1     Alfreds Futterkiste    Maria Anders    Obere Str. 57    Berlin    12209    Germany
2    Ana Trujillo Emparedados y helados    Ana Trujillo    Avda. de la Constitución 2222    México D.F.    05021    Mexico
3    Antonio Moreno Taquería    Antonio Moreno    Mataderos 2312    México D.F.    05023    Mexico
4     Around the Horn    Thomas Hardy    120 Hanover Sq.    London    WA1 1DP    UK
5    Berglunds snabbköp    Christina Berglund    Berguvsvägen 8    Luleå    S-958 22    Sweden
SQL GROUP BY示例
 以下SQL语句列出了每个国家/地区的客户数量:

SELECT COUNT(CustomerID), Country
FROM Customers
GROUP BY Country;
以下SQL语句列出每个国家的客户数量,从高到低排序:
SELECT COUNT(CustomerID), Country
FROM Customers
GROUP BY Country
ORDER BY COUNT(CustomerID) DESC;

演示数据库
以下是罗斯文示例数据库中“订单”表的一个选择:

OrderID    CustomerID    EmployeeID    OrderDate    ShipperID
10248    90    5    1996-07-04    3
10249    81    6    1996-07-05    1
10250    34    4    1996-07-08    2
 并从“Shippers”表中选择:

ShipperID    ShipperName
1    Speedy Express
2    United Package
3    Federal Shipping
GROUP BY使用JOIN示例
 以下SQL语句列出了每个发货人发送的订单数量:

SELECT Shippers.ShipperName, COUNT(Orders.OrderID) AS NumberOfOrders FROM Orders
LEFT JOIN Shippers ON Orders.ShipperID = Shippers.ShipperID
GROUP BY ShipperName;

到此,关于“GROUP BY语句与Aggregate函数结合使用能做什么”的学习就结束了,希望能够解决大家的疑惑,另外大家动手实践也很重要,对大家加深理解和学习很有帮助。

(编辑:汽车网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章