• T-SQL GROUP BY子句 分组查询


    SQL Server GROUP BY子句与SELECT语句协作使用,以将相同的数据分组。

    GROUP BY子句位于SELECT语句中的WHERE子句之后,位于ORDER BY子句之前。

    语法

    以下是GROUP BY子句的基本语法,GROUP BY子句必须遵循WHERE子句中的条件,并且必须在使用ORDER BY子句之前。

    SELECT column1, column2 
    FROM table_name 
    WHERE [ conditions ] 
    GROUP BY column1, column2 
    ORDER BY column1, column2 
    

    请参考具有以下记录的CUSTOMERS表:

    ID  NAME       AGE       ADDRESS          SALARY 
    1   Ramesh     32        Ahmedabad        2000.00 
    2   Khilan     25        Delhi            1500.00 
    3   kaushik    23        Kota             2000.00 
    4   Chaitali   25        Mumbai           6500.00 
    5   Hardik     27        Bhopal           8500.00 
    6   Komal      22        MP               4500.00 
    7   Muffy      24        Indore           10000.00 
    

    如果你想知道每个客户的工资总额,那么可以使用以下的GROUP BY查询方式:

    SELECT NAME, SUM(SALARY) as [sum of salary] FROM CUSTOMERS 
       GROUP BY NAME;
    

    上述命令将产生以下结果集:

    NAME        sum of salary 
    Chaitali    6500.00 
    Hardik      8500.00 
    kaushik     2000.00 
    Khilan      1500.00 
    Komal       4500.00 
    Muffy       10000.00 
    Ramesh      2000.00
    

    现在让我们考虑存在重复名称的情况,请参考具有以下记录的CUSTOMERS表:

    ID  NAME       AGE       ADDRESS           SALARY 
    1   Ramesh     32        Ahmedabad         2000.00 
    2   Khilan     25        Delhi             1500.00 
    3   kaushik    23        Kota              2000.00 
    4   Chaitali   25        Mumbai            6500.00 
    5   Hardik     27        Bhopal            8500.00 
    6   Komal      22        MP                4500.00 
    7   Muffy      24        Indore            10000.00 
    

    如果我们想知道每个客户的工资总额,那么可以使用以下的GROUP BY查询方式:

    SELECT NAME, SUM(SALARY) as [sum of salary] FROM CUSTOMERS 
       GROUP BY NAME 
    

    上述命令将产生以下结果集:

    NAME        sum of salary 
    Hardik      8500.00 
    kaushik     8500.00 
    Komal       4500.00 
    Muffy       10000.00 
    Ramesh      3500.00 
  • 相关阅读:
    27个提升效率的iOS开源库推荐
    HTTP Authorization
    两种方法删除NSUserDefaults所有记录
    label调整字间距,调整行间距
    iphone手机屏幕大小
    app 图标需要的大小
    多了一层或者多层响应者 如何实现跳转
    用python实现excel中查找指定字符的行信息
    Python 遍历一个目录,输出所有的文件名
    kettle HTTP client
  • 原文地址:https://www.cnblogs.com/Williamls/p/9267308.html
Copyright © 2020-2023  润新知