zoukankan      html  css  js  c++  java
  • mysql统计某个指标之和大于指定值的记录

    一、having与where的区别

    where having
    可以与update、delete、select一起使用 只能与select一起使用
    在group by之前使用 group by之后使用
    不一定要与group by一起使用 必须与group by一起使用
    对表中的数据进行筛选 对聚合后的数据进行筛选
    与单行数据的函数upper,lower等一起使用 与作用于多行的函数count、sum一起使用
       
       

    二、条件查询

    题目:查询出enbale之和大于10的modifier与enable总量

    1、使用having

    having在聚合后对记录进行筛选,表里面可以不存在此记录,where作为条件查询真实的表或者查询出来的表中必须有记录

    select modifier,sum(`enable`) as total from api_info group by modifier having total>10

    此处的having如果换成where就会报错

    2、使用联合查询

    SELECT DISTINCT
        (a.modifier),
        a1.total
    FROM
        api_info a
    RIGHT JOIN (
        SELECT
            modifier,
            SUM(`enable`) AS total
        FROM
            api_info
        GROUP BY
            modifier
    ) AS a1 ON a.modifier = a1.modifier
    WHERE
        total > 10;
  • 相关阅读:
    sed 删除最后几行 和删除指定行 awk使用
    nagios监控
    nginx服务启动脚本
    Linux修改环境变量的4种方法
    源码编译apache报错的解决方法
    apache源码安装及启动脚本添加
    haproxy配置
    awk命令2
    awk命令1
    通配符及变量
  • 原文地址:https://www.cnblogs.com/xiaochengzi/p/14957740.html
Copyright © 2011-2022 走看看