暂无图片
暂无图片
12
暂无图片
暂无图片
暂无图片

sql 分组语句group by

6808


聚合函数如sum(),max()等,通常需要结合分组语句group by 使用

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

语法:
    SELECT column_name, aggregate_function(column_name)
    FROM table_name
    WHERE column_name operator value
    GROUP BY column_name



    GROUP BY 实例

      

    student表查询结果如下:

     


    1、查询每个人的总分,语句如下:


      select name 姓名,sum(score) 个人总分 
      from student
      group by name


      输出结果:


      2、按课程汇总查询,语句如下:


        select name 姓名,
        max(case course when '语文' then score else 0 end ) 语文,
        max(case course when '数学' then score else 0 end ) 数学,
        max(case course when '英语' then score else 0 end ) 英语,
        sum(score) 总成绩


        from student
        group by name


        输出结果:



        3、查询平均分大于75分的学生,语句如下:

          select name 姓名,
          max(case course when '语文' then score else 0 end ) 语文,
          max(case course when '数学' then score else 0 end ) 数学,
          max(case course when '英语' then score else 0 end ) 英语,
          sum(score) 总成绩,
          avg(score) 平均分
          from student
          group by name
          having avg(score)>75

          输出结果:


          注:分组语句GROUP BY  做条件筛选,必须用having




          小编推荐阅读:






          文章转载自SQL数据库入门学习,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

          评论