本文概述
- 1.分组依据
- 2.有
- 3.订购
文章图片
1.分组依据
- SQL GROUP BY语句用于将相同的数据分为几组。 GROUP BY语句与SQL SELECT语句一起使用。
- GROUP BY语句在SELECT语句中的WHERE子句之后, 在ORDER BY子句之前。
- GROUP BY语句与聚合功能一起使用。
SELECT columnFROM table_nameWHERE conditions GROUP BY columnORDER BY column
样表:
PRODUCT_MAST
产品 | 公司 | 数量 | 率 | 成本 |
---|---|---|---|---|
Item1 | Com1 | 2 | 10 | 20 |
Item2 | Com2 | 3 | 25 | 75 |
Item3 | Com1 | 2 | 30 | 60 |
Item4 | Com3 | 5 | 10 | 50 |
Item5 | Com2 | 2 | 20 | 40 |
Item6 | Cpm1 | 3 | 25 | 75 |
Item7 | Com1 | 5 | 30 | 150 |
Item8 | Com1 | 3 | 10 | 30 |
Item9 | Com2 | 2 | 25 | 50 |
Item10 | Com3 | 4 | 30 | 120 |
SELECT COMPANY, COUNT(*)FROM PRODUCT_MAST GROUP BY COMPANY;
输出:
Com15Com23Com32
2.有
- HAVING子句用于指定组或集合的搜索条件。
- 在GROUP BY子句中使用hading。如果不使用GROUP BY子句, 则可以像WHERE子句一样使用HAVING函数。
SELECT column1, column2 FROM table_nameWHERE conditions GROUP BY column1, column2 HAVING conditionsORDER BY column1, column2;
【DBMS SQL子句】例:
SELECT COMPANY, COUNT(*)FROM PRODUCT_MAST GROUP BY COMPANYHAVING COUNT(*)>
2;
输出:
Com15Com23
3.订购
- ORDER BY子句以升序或降序对结果集进行排序。
- 默认情况下, 它将按升序对记录进行排序。 DESC关键字用于按降序对记录进行排序。
SELECT column1, column2FROM table_nameWHERE conditionORDER BY column1, column2... ASC|DESC;
哪里
ASC:用于按表达式升序对结果集进行排序。
DESC:按表达式对结果集按降序排序。
示例:按升序对结果进行排序
表:
顾客
客户ID | NAME | 地址 |
---|---|---|
12 | Kathrin | US |
23 | David | Bangkok |
34 | Alina | Dubai |
45 | John | UK |
56 | Harry | US |
SELECT *FROM CUSTOMERORDER BY NAME;
输出:
客户ID | NAME | 地址 |
---|---|---|
34 | Alina | Dubai |
23 | David | Bangkok |
56 | Harry | US |
45 | John | UK |
12 | Kathrin | US |
使用上面的CUSTOMER表
SELECT *FROM CUSTOMERORDER BY NAME DESC;
输出:
客户ID | NAME | 地址 |
---|---|---|
12 | Kathrin | US |
45 | John | UK |
56 | Harry | US |
23 | David | Bangkok |
34 | Alina | Dubai |
推荐阅读
- DBMS SQL命令
- DBMS SQL聚合函数
- DBMS专业化解析
- DBMS顺序文件组织
- DBMS第二范式(2NF)
- DBMS事务序列表或时间表
- 更高级别的DBMS关系
- DBMS关系模型概念
- DBMS关系分解