zoukankan      html  css  js  c++  java
  • mysql之子查询与分组查询

    有时候需要对查询结果进行分组,以便于我们对分组后的数据进行计算,可以使用数据分组操作

    数据分组查询 group by

    需要注意的是group by只是创建分组、并不能保证分组里面的数据排序。如果需要排序,可以使用order by

    group by字句必须出现在where字句之后,order by之句之前

    来看下分组实例,我指定了两个列,列名为accmplish_num是我想要分组的字段,

    而别名为num的字段是对分组后的数据进行统计的总和,也就是说,我这个表里面accmplish_num为0出现了8次。

     除了上面这种分组数据外,还可以对分组进行指定条件

    过滤分组    使用having字句

     where与having一起使用过滤

    在他们一起使用的时候,注意先执行where后面的条件,再进行创建分组,统计,然后再统计num大于1的数据

     子查询

    说明:就是嵌套在其他字句查询里面的查询

    需求:我们知道订单表中的线路line_id,想要找出线路为15的乘客的所有信息

    看下面的例子,先找出线路line_id=15的订单表中的所有乘客手机号,这个就是括号里面的子查询

    然后在乘客表里面找出mobile在子查询中的所有乘客的信息,也就满足了我们需求,当然这只是简单的一层嵌套,你也可以使用多层,

    但是并不建议嵌套太多,因为这样做在工作中影响查询效率

  • 相关阅读:
    CodeForces 980 E The Number Games
    CodeForces 980 D Perfect Groups
    【动态规划】The Triangle
    【动态规划】矩形嵌套
    金块问题-排序-找最大最小
    猪八戒吃西瓜(wmelon)-排序-查找
    【贪心】取数游戏
    【贪心】排队接水
    桐桐的贸易--WA
    【贪心】智力大冲浪
  • 原文地址:https://www.cnblogs.com/king2/p/13658965.html
Copyright © 2011-2022 走看看