group by 注意的细节 ,
1. GROUP BY子句必须出现在WHERE子句之后,ORDER BY子句之前. HAVING语句必须在ORDER BY子句之后。(where先执行,再groupby分组;groupby先分组,having在执行。)
select T_NAME , T_ADDRESS ,min(rowid)
from xuesheng
where T_AGE >20 2
group by T_NAME, T_PHONE,T_AGE, T_ADDRESS
having count(*) > 1) 4
红色数字是执行顺序:
2. 除了聚集函数外, SELECT语句中的每个列都必须在GROUP BY子句中给出。count()为聚集函数,T_NAME, T_PHONE,T_BIRTHDAY, T_ADDRESS 在后面groupby中有,所以select后面可有可不有。
(a)正确的:
select T_NAME , T_ADDRESS ,min(rowid) ---select语句中的列
from xuesheng
group by T_NAME, T_PHONE,T_BIRTHDAY, T_ADDRESS ---GROUP BY子句中
having count(*) > 1)
(b) T_PHONE ,在select 语句中存在,而在group by中不存在,所以会报错。
select T_NAME , T_ADDRESS ,min(rowid) ,T_PHONE ---select语句中的列
from xuesheng
group by T_NAME, T_BIRTHDAY, T_ADDRESS ---GROUP BY子句中
having count(*) > 1)
3. having 作用的对象是分组出来的对象的相关聚合函数进行的筛选。
group by 注意的细节 ,的更多相关文章
- MYSQL中GROUP BY的细节及SELECT语句顺序
一.GROUP BY语句的细节 我们知道,在sql中,GROUP BY语句主要用来给数据分组,以便能对每个组进行聚集计算,但是GROUP BY也有一些限制需要知道: 1. GROUP BY字句可以包含 ...
- Oracle总结【SQL细节、多表查询、分组查询、分页】
前言 在之前已经大概了解过Mysql数据库和学过相关的Oracle知识点,但是太久没用过Oracle了,就基本忘了...印象中就只有基本的SQL语句和相关一些概念....写下本博文的原因就是记载着Or ...
- Unity LOD-Level of Detail(多层次细节)用法教程
Unity LOD 多层次细节 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- 心分 ...
- 26、Oracle(二)
1)掌握多行函数与分组操作 2)掌握多表查询与子查询 3)理解集合查询与掌握Oracle分页语法 4)理解创建.修改和删除表和表约束 --------------------------------- ...
- Oracle总结第一篇【基本SQL操作】
前言 在之前已经大概了解过Mysql数据库和学过相关的Oracle知识点,但是太久没用过Oracle了,就基本忘了-印象中就只有基本的SQL语句和相关一些概念-.写下本博文的原因就是记载着Oracle ...
- Google SketchUp Cookbook: (Chapter 2) Following Paths with Follow Me
软件环境 SketchUp Pro 2018 参考书籍 Google SketchUp Cookbook Follow Me工具 Follow Me工具,将2D图形沿着一条路径挤出生成3D物体. 使用 ...
- Oracle数据库,基础知识
1.Oracle的五大约束条件: 1 主键 primary key2 外键 foreign key,3 唯一 unique,4 检测 check5 非空 not null 实例运用: -- ...
- Oracle 学习笔记二
一.oracle通用函数vnl(a,b) 用于任何类型,如果a的值不为null返回a的值否则返回b的值 条件判断oracle中可以使用 case 字段 when 条件1 then 表达式1 when ...
- MySQL数据库(良心资料)
一.MySQL数据库 1.数据库简介 1.1.数据库的概念 数据库就是用来存储和管理数据的仓库.数据库存储数据的优点: l 可存储大量数据: l 方便检索: l 保持数据的一致性.完整性: l ...
随机推荐
- 简单springboot及springboot cloud环境搭建
springboot使用特定的方式,简化了spring的各种xml配置文件,并通过maven或者gradle,完成所需依赖,使用springboot maven插件,可直接输出可运行的jar包,省去了 ...
- sql 全局查询
select * from sysobjects o ,syscomments c where o.id=c.id and text like '%ST_Status%'
- js 获取时间相关
$(document).ready(function () { var date = new Date(); var sb = ""; ...
- hdu 1255 矩形覆盖面积(面积交)
http://www.cnblogs.com/scau20110726/archive/2013/04/14/3020998.html 面积交和面积并基本上差不多.在面积并里,len[]记录的是覆盖一 ...
- typeScript入门(四)泛型
泛型:软件工程中,我们不仅要创建一致的定义良好的API,同时也要考虑可重用性. 组件不仅能够支持当前的数据类型,同时也能支持未来的数据类型,这在创建大型系统时为你提供了十分灵活的功能. 在像C#和Ja ...
- 2729:Blah数集
2729:Blah数集 查看 提交 统计 提问 总时间限制: 3000ms 内存限制: 65536kB 描述 大数学家高斯小时候偶然间发现一种有趣的自然数集合Blah,对于以a为基的集合Ba定义如下: ...
- javascript实现数据结构与算法系列
1.线性表(Linear list) 线性表--简单示例及线性表的顺序表示和实现 线性表--线性链表(链式存储结构) 线性表的静态单链表存储结构 循环链表与双向链表 功能完整的线性链表 线性链表的例子 ...
- 微软技术大会直播倒计时7天 | 地球上的IT咖们,正在慢慢向北京聚集
去年,一句歌词火了:“我在北方的寒夜里,四季如春.”足以见得,北京的冬天,是可以把人冻蒙圈儿的. 然而有一群人,却正在慢慢靠近这样寒冷的北京,7 天后,他们将齐聚在北京. 他们来这里干什么?又是来见谁 ...
- tomcat、Apache服务器外网无法访问80和8080端口,其他端口可以访问
tomcat.Apache服务器外网无法访问80和8080端口,其他端口都可以访问,很明显地看出这是网络运营商的问题,他们把80和8080端口对外访问屏蔽了. 解释:这两个端口是常用的HTTP协议端口 ...
- WAKE-WIN10-SOFT-MATio
1,matio Matio is an open-source C library for reading and writing binary MATLAB MAT files. This libr ...