• sql汇总查询


    SUM()    计算字段的总和

    AVG()    计算字段的平均值

    MIN()    查找字段中的最小值

    MAX()    查找字段中的最大值

    COUNT()    计算字段中值的数目

    COUNT(*)    计算查询结果的记录数

    选择列表中的字段函数

        select avg(field),sum(field2),(100 * avg(field3/field4)) from table,table1 where ...

    NULL将被忽略:

        如果字段中任何数据值都是NULL,那么在计算函数的值时都可将它们忽略。

        如果字段中的每个数据项都是NULL,那么SUM()、AVG()、MIN()、MAX()字段函数返回一个NULL值,COUNT()函数返回一个0值。

        如果字段中没有数据项(即字段是空的),那么SUM(),AVG(),MIN()和MAX()字段函数返回一个NULL值,COUNT返回一个0值。

        COUNT(*)计算记录时并不理会字段中是否存在NULL值,如果没有记录返回0值。

    消除重复记录(DISTINCT):

        select count(distinct field) from table count(distinct field2)

    分组查询(GROUP BY)

        select * from table where 。。。 group by count(field)...

    分组搜索条件(HAVING 子句):

        用于分组查询中指定条件,和SELECT中WHERE用法一样。

        select * from table,table2 where ... group by field group by field2 having count(*)>=2 

        HAVING子句用于把记录组包含进查询结果或查询结果中去除,所以它指定的搜索条件必须是作为一个整体应用于组而不是应用于各个记录。

        HAVING字句几乎总是和group by 字句一起使用,但是SELECT语句并不要求这样,如果HAVING字句没有GROUP BY字句的情况下出现,SQL把整个的详细查询结果认为是一个组。在HAVING字句中的字段函数被应用于一组以决定是否将这组包含或排除在查询结果中,并且改组由所有的记录组成

  • 相关阅读:
    .Net时间计算函数,统计某一天是一年的第几周,这一周从哪天开始到哪天结束
    1分钟搞定超慢SQL
    网站
    舞台
    相见欢
    一套完整系统对人生的意义
    2015/08/15心情
    Linux下压缩某个文件夹(文件夹打包)
    init进程 && 解析Android启动脚本init.rc && 修改它使不启动android && init.rc中启动一个sh文件
    andriod系统裁剪心得
  • 原文地址:https://www.cnblogs.com/fanchangfa/p/2633820.html
Copyright © 2020-2023  润新知