Sql语法注意事项
#分组 group by
作用:group by 子句可以将结果集按照指定的字段值一样的记录进行分组,配合聚合函数
可以进行组内统计的工作。
注意1:当在select中时,查询的内容中如果包含聚合函数,则聚合函数以外的字段需
要用group by进行分组。
eg: 查询每个部门的平均工资?
select avg(sal),deptno from emp group by dentno;
eg:查看每个部门的平均工资,前提是该部门的平均工资高于2000;
select avg(sal),deptno from emp where avg(sal)>2000 group by deptno;
注意2:上述SQL会报错,where中不能用聚合函数作为过滤条件。 原因是因为过滤时
机不对, where是在查询表中数据的时候逐行进行过滤,将满足条件的记录形成结果集。 而
使用聚合函数的结果进行过滤的前提是分组统计,分组是建立在结果集上的,而where是用来
形成结果集时的过滤。所以用聚合函数过滤应当是在where之后进行的。
having子句,having子句可以用聚合函数作为过滤条件。having必须跟在group by子句后面(不
定义group by不能单独定义having)。having是用来添加过滤条件以去除...
Sql语法注意事项的更多相关文章
- Hadoop Hive sql语法详解
Hadoop Hive sql语法详解 Hive 是基于Hadoop 构建的一套数据仓库分析系统,它提供了丰富的SQL查询方式来分析存储在Hadoop 分布式文件系统中的数据,可以将结构 化的数据文件 ...
- SQL开发——SQL语法
文档资料参考: 参考:http://www.w3school.com.cn/sql/sql_syntax.asp 参考:http://wiki.jikexueyuan.com/project/sql/ ...
- SQL语法基础之高级应用
SQL语法基础之高级应用 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.存储过程与函数 1>.CREATE PROCEDURE 用来创建存储过程 mysql> ? ...
- mysql删除sql表添加别名及删除sql的注意事项
本文为博主原创,未经允许不得转载: 根据平常的习惯,个人会将操作的表后面添加一个别名,无论是使用还是不使用的时候,均是为了 修改还是扩展sql的时候更加安全,方便,快捷. 今天在写删除的sql时,对表 ...
- SQL-W3School-基础:SQL 语法
ylbtech-SQL-W3School-基础:SQL 语法 1.返回顶部 1. 数据库表 一个数据库通常包含一个或多个表.每个表由一个名字标识(例如“客户”或者“订单”).表包含带有数据的记录(行) ...
- 值得注意的ibatis动态sql语法格式
一.Ibatis常用动态sql语法,简单粗暴用一例子 <select id="iBatisSelectList" parameterClass="java.util ...
- Linq to SQL 语法查询(链接查询,子查询 & in操作 & join,分组统计等)
Linq to SQL 语法查询(链接查询,子查询 & in操作 & join,分组统计等) 子查询 描述:查询订单数超过5的顾客信息 查询句法: var 子查询 = from c i ...
- SQL 语法总结
学了一个月的java,开始有入门的感觉.这段时间接触到了java的JDBC, 发现学习这部分的内容还是要有SQL的基础,于是花费了几天时间学习了一下SQL语法,并将其总结于下. 选择数据 SELECT ...
- SQL语法和运算符(一)
一个数据库通常包含一个或多个表.每个表由一个名字标识,表包含带有数据的记录(行). 一些最重要的SQL命令(SQL对大小写不敏感): 一.SQL语法 select:从数据库中提取数据 update:更 ...
随机推荐
- CodeForces #549 Div.2 D. The Beatles
题目 解题思路 关键是要 ,找出L 的组合,然后遍历L的组合,用最大公约数就可以算出来当前L的值要停多少次 怎么找出L的组合呢?饭店是每隔K 有一个,是重复的,我们只需要算出第一个饭店两侧,起点和停顿 ...
- LocalDate
java中做时间处理时一般会采用java.util.Date,但是相比于Date来说,还有更好的选择 -- java.time.LocalDate. 这是jdk8中新增的日期处理类,同时新增的还有ja ...
- 【Python基础】lpthw - Exercise 45 制作游戏
作者在本节中给出了 一些风格建议. 一.函数的风格 1. 类里面的函数经常被称作“方法”,但实质上它和函数没什么不同. 2. 使用类的时候,可以用动词而不是名词给函数命名,指明其具体功能,例如list ...
- 【C++】满二叉树问题
/* 给出一棵满二叉树的先序遍历,有两种节点:字母节点(A-Z,无重复)和空节点(#).要求这个树的中序遍历.输出中序遍历时不需要输出#. 满二叉树的层数n满足1<=n<=5. Sampl ...
- npm run dev没反应
npm config set registry https://registry.npm.taobao.org npm install npm run dev
- nginx修改上传文件大小限制
问题: 项目上线,图片上传报413错误,找了半天,原来是nginx限制了上传大小 在nginx.conf的server的location中加client_max_body_size 10m;
- C#基础加强(5)之装箱与拆箱
定义 装箱:将值类型赋值给 Object 类型变量时,就是装箱操作,即包装为 Object 对象. 因为值类型都是 ValueType 类型,而 ValueType 页继承了 Object(CLR 内 ...
- 扫黑除恶Team second
团队介绍: 团队序号:② 团队名称:扫黑除恶 团队项目:飞机大战游戏 团队码云地址:https://gitee.com/MrLiu199903/seflash/branches 撰写人:刘新飞 学号: ...
- Qt QLabel QTextBrowser 实现网址链接
勾选属性: 并且编辑网址链接: QLabel--点击text属性的...: QTextBrowser--双击控件
- java学习之静态内部类
/*静态内部类 * 在类内部定义一个静态内部类 * 静态的含义是该内部类可以向其他静态成员一样,不用依赖与外部类的对象.可以直接使用 * 因此该类只能访问外部类的静态成员 * * * * */ cla ...