zoukankan      html  css  js  c++  java
  • MySQL基础之 排序与限制,聚合

    排序与限制

    ORDER BY

    作用:取出按照某个字段进行排序后的记录结果集。

    配合:常与DESC  和ASC一块使用:默认是ASC,表示升序。DESC表示降序

    LIMIT

    作用:用于显示数据的一部分记录,而不是全部记录。

    语法:SELECT.....[LIMIT offset_start,row_count]

      其中offset_start表示记录的起始位置,默认起始位置是从0开始,而row_count表示要显示的记录的行数。

    1、我们举两个例子

    mysql> SELECT * FROM information ORDER BY salery DESC LIMIT 3;
    +------+----------+---------------+-----------+--------+
    | id   | name     | address       | city      | salery |
    +------+----------+---------------+-----------+--------+
    | 1004 | xiaohua  | haha street   | Zhengzhou |   3450 |
    | 1002 | xiaochen | Oxford street | New York  |   3240 |
    | 1001 | xiaoming | NiuJin        | England   |   2000 |
    +------+----------+---------------+-----------+--------+
    3 rows in set (0.00 sec)
    
    mysql> SELECT * FROM information ORDER BY salery DESC LIMIT 1,2;   #从第二行开始显示,显示两行。
    +------+----------+---------------+----------+--------+
    | id   | name     | address       | city     | salery |
    +------+----------+---------------+----------+--------+
    | 1002 | xiaochen | Oxford street | New York |   3240 |
    | 1001 | xiaoming | NiuJin        | England  |   2000 |
    +------+----------+---------------+----------+--------+
    2 rows in set (0.00 sec)

    注意:

    1、LIMIT属于MySQL扩展的语法,在其他的数据库上不能使用

     2、如果存在一条记录的值为空值(NULL)时,这条记录将显示为第一条记录,因为,按升序排序时,含空值的记录将最先显示,可以理解为空值是该字段的最小值,而按降序排列时,字段为空值的记录将最后显示。

    聚合

    GROUP BY

    作用:进行分类聚合

    语法:SELECT  [field1,field2,.....fieldn]  fun_name  FROM  tablename  [WHERE  condition]  [GROUP  BY  field1,filed2,......fieldn]  [HAVING  condition]

    参数解释;fun_name表示聚合函数,比如max() 、min()、count()、sum()

        GROUP  BY:后面的字段表示对其进行分类聚合。

        WHERE与HAVING的区别:WHERE表示对查询前的数据进行过滤。而HAVING表示对查询后的数据再次进行过滤。

    1、既要统计每个名字对应的人数,还要统计总人数

    mysql> SELECT id,count(1) FROM information GROUP BY id WITH ROLLUP;
    +------+----------+
    | id   | count(1) |
    +------+----------+
    | 1001 |        1 |
    | 1002 |        1 |
    | 1004 |        1 |
    | NULL |        3 |
    +------+----------+
    4 rows in set (0.00 sec)

    WITH  ROLLUP 表示是否对分类聚合后的结果进行再汇总。

  • 相关阅读:
    maven常用插件
    Java反编译工具:Java Decompiler
    好看的电影
    我说
    Fisher准则一维聚类
    Java获取函数参数名称
    推荐几个字体生成网站
    Python中的两种路径
    轻量级数据库简介
    Solr Wiki文档
  • 原文地址:https://www.cnblogs.com/FengGeBlog/p/9831461.html
Copyright © 2011-2022 走看看