zoukankan      html  css  js  c++  java
  • GROUP BY 与聚合函数 使用注意点

    表的设计:

    表里面的内容:

    一:在不使用聚合函数的时候,group by 子句中必须包含所有的列,否则会报错,如下

    select name,MON from [测试、] group by name

    会报错:

    在子句中加上所有的列的时候

    select name,MON from [测试、] group by name,mon

    这时候不报错,执行结果

    此时虽然成功执行了,但是可以看出来group by在这里并没有发挥任何的作用,我们完全可以直接select而不用group by,所以,group by子句要配合聚合函数使用,并且,在配合聚合函数使用的时候,在group by子句中不要加上聚合函数处的列名(加入as了的话)

    配合聚合函数使用了的情况:

    select SUM(mon),name from [测试、] group by name

    结果:

    是我们想要的。

    再如:

    select MAX(ID),name from [测试、] group by name

    结果:

    也是我们想要的。

    但是说如果这样的话:

    select MAX(ID) as id,name from [测试、] group by name,id

    得到的结果是:

    很明显这不是我们想要的。

    所以这时候在使用聚合函数的地方若是使用了as另外命名,请不要在group by子句后再加上那个令命名的名字,否则就和文章刚开始出现的情况一样

  • 相关阅读:
    NYOJ 625 笨蛋的难题(二)
    NYOJ 102 次方求模
    ZJU Least Common Multiple
    ZJUOJ 1073 Round and Round We Go
    NYOJ 709 异形卵
    HDU 1279 验证角谷猜想
    BNUOJ 1015 信息战(一)——加密程序
    HDU 1202 The calculation of GPA
    "蓝桥杯“基础练习:字母图形
    "蓝桥杯“基础练习:数列特征
  • 原文地址:https://www.cnblogs.com/jinianjun/p/2549735.html
Copyright © 2011-2022 走看看