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:更 ...
随机推荐
- Python基础听课笔记
需求:为8位老师随机分配办公室 #先定义一个列表用来存储8位老师的姓名 teachers = ['xiaowang', 'xiaoli', 'xiangming', 'xiaohua', 'xiaog ...
- arcengine导出复本
参考: https://gis.stackexchange.com/questions/172315/creating-checkout-replica-in-arcobjects-from-arcs ...
- IAB303 Data Analytics Assessment Task
Assessment TaskIAB303 Data Analyticsfor Business InsightSemester I 2019Assessment 2 – Data Analytics ...
- [ionic3.x开发记录]ios下页面过渡效果不出现的小坑
如果内容没有被<ion-content></ion-content>或者<ion-header></ion-header>标签包裹,页面过渡的时候是没有 ...
- 一对多关联模型,BELONGS_TO
先分别创建三张表:test_user test_message test_user 表里有id.name字段 test_message 表里有id.content.uid字段 然后建立一个Mode ...
- 已知两点经纬度(百度地图),用js求解两点之间的角度
采用的网址:https://my.oschina.net/boogoogle/blog/740478
- mysql (六)
约束: 非空约束: 创建表时添加: create table stu( id int , name varchar(20) not null ) 创建完表之后 alter table stu m ...
- Linux —— 命令
Linux —— 命令 各种查看 查看文件绝对路径 pwd 查看某服务占用端口 netstat -ano |grep mysql Linux 下的复制粘贴 0.在KDE/Gnome下: 复制命令:Ct ...
- 2018-2019-2 网络对抗技术 20165236 Exp5 MSF基础应用
2018-2019-2 网络对抗技术 20165236 Exp5 MSF基础应用 一. 实践内容(3.5分) 本实践目标是掌握metasploit的基本应用方式,重点常用的三种攻击方式的思路.具体需要 ...
- 对象是存入cookie中需要注意
直接把对象存入cookie中的话,会转为字符串的 cookie中保存的都是字符串 所以取出来后还需要进行转换,转换成对象 JSON.parse()进行转换