mysql概要(四)order by,group 的特点,子查询
1.order by 默认按升序排列(asc/desc),多字段排序 order by 字段 排序方式,字段2 排序方式,..;在分组排序中,排序是对分组后的结局进行排序,而不是在组中进行排序。
2.limit 在语句最好,截取记录的条数。一般和order by 配合使用
limit[offset][N]
offset: 偏移量 N:条数; 如limit(2,2),即从第三记录开始取两条记录。当一个参数时:limit 2,即从第一条记录开始取2条
关于分组和聚合函数的一个问题,当分组时会从库中取组第一次出现时对应数据作为组数据,而使用聚合函数时候,聚合函数参数对应的列值和该组并不是对应的。只是组合一起 如:以班级进行分组,获取成绩最好的学生,select name ,max(score) from stu group by bianji; 这样最大成绩对应的学生和名字对应学生并非是对应的。
3.1.如果你想在学校学生表中获取班级成绩最好的学生信息,如果想使用简单分组是不行,上面已经说明,并且你还不不能保证,会不会有多个相同成绩的存在。
方法一:先使用分组查询出班级和最大成绩的结果作为新表,再和原表进行联合查询出所对应的学生信息。
方法二:如果是最好成绩只有一个话的特列,倒是可以先按班级和成绩排序结果集再进行分组(利用了分组获取第一次出现的规则)。类似获取商品中每类物品的最高价 格的物品:
4子查询 where from exists
where 子查询:聚合函数可以直接用差点以为只能在group中使用了,但是不能和别的字段一起使用
使用不同的子查询查出栏目下最新商品(只是id最大的那个为最新)
where
from
exists:查询出有商品的栏目:可以理解成外查询中每条记录,代入到内查询中,如果内查询有结果,就表示外查询的当前记录满足条件。
mysql概要(四)order by,group 的特点,子查询的更多相关文章
- 【MYSQL】update/delete/select语句中的子查询
update或delete语句里含有子查询时,子查询里的表不能在update或是delete语句中,如含有运行时会报错:但select语句里含有子查询时,子查询里的表可以在select语句中. 如:把 ...
- mysql常用基础操作语法(十)~~子查询【命令行模式】
mysql中虽然有连接查询实现多表连接查询,但是连接查询的性能很差,因此便出现了子查询. 1.理论上,子查询可以出现在查询语句的任何位置,但实际应用中多出现在from后和where后.出现在from后 ...
- MySQL数据库(12)----ALL、ANY、SOME子查询
运算符 ALL 和 ANY 常与某个关系比较运算符结合在一起使用,以便测试列子查询的结果.它们会测试比较值与子查询返回的全部或部分值是否匹配.例如,当比较值小于或等于子查询返回的每个值时,<= ...
- SQL中order by;group up;like;关联查询join on的用法
排序order by的用法: 1.order by 字段名1 asc/desc, 字段名2 asc/desc,... 先按照字段名1的升序/降续给表进行排列 然后 按照字段名2的升序/降续给表进行排列 ...
- 子查询四(在select子句中使用子查询)
示例一.查询出每个部门的编号,名称,位置,部门人数,平均工资 SELECT d.deptno,d.dname,d.loc, (SELECT COUNT(empno) FROM emp WHERE em ...
- MySQL 子查询(四)子查询的优化、将子查询重写为连接
MySQL 5.7 ref ——13.2.10.10优化子查询 十.子查询的优化 开发正在进行中,因此从长远来看,没有什么优化建议是可靠的.以下列表提供了一些您可能想要使用的有趣技巧.See also ...
- MySQL里面的子查询
一.子查询定义 定义: 子查询允许把一个查询嵌套在另一个查询当中. 子查询,又叫内部查询,相对于内部查询,包含内部查询的就称为外部查询. 子查询可以包含普通select可以包括的任何子句,比如:dis ...
- mysql查询、子查询、连接查询
mysql查询.子查询.连接查询 一.mysql查询的五种子句 where子句(条件查询):按照“条件表达式”指定的条件进行查询. group by子句(分组):按照“属性名”指定的字段进行分组.gr ...
- mysql 子句、子查询、连接查询
一.mysql查询的五种子句 where子句(条件查询):按照“条件表达式”指定的条件进行查询. group by子句(分组):按照“属性名”指定的字段进行分组.group by子句通常和count( ...
- MySQL 子查询(一)
源自MySQL 5.7 官方手册 13.2.10 Subquery Syntax 〇.MySQL子查询介绍 子查询指的是嵌套在某个语句中的SELECT语句. MySQL支持标准SQL所要求的所有子查询 ...
随机推荐
- 《深度探索C++对象模型》2
第四章: function语意学 非静态成员函数: 名称的特殊处理: 静态成员函数由于缺乏this指针,因此差不多等于非成员函数: virtual table布局(单一继承): 单一继承下函数调用: ...
- hdwiki 的模板和标签
模版和标签 HDWiki模版标签可以让用户更方便.更容易的在页面中调用HDWiki的数据. HDWiki的三种标签:1.循环标签 {hdwiki:doclist...}{/hdwiki} ...
- js判断用户浏览器是PC还是手机,自动跳转
browserRedirect(); function browserRedirect() { var sUserAgent = navigator.userAgent.toLowerCase(); ...
- PostgreSql安装
官网:http://www.postgresql.org/download/linux/redhat/ 一.安装 由于我的机子是centos6.2,所以选择RedHat的. 按照官网所说的进行安装: ...
- Sql Server 2008完全卸载方法(其他版本类似)
一. SQL2008卸载. 1.从控制面板卸载 1)点击计算机右下角“开始”,点击“控制面板” 2)点击“卸载程序”. 3)在程序列表中找到“Microsoft SQL Server 2008” ...
- jquery简单插件到复杂插件(1)--tabs
写在前面,到了新公司开始转做前段,之前一直写php,一共写了半年,转过来,jq都用不好,但是还是得不断的学习,谁没菜过.从最简单的开始写,最近也在学习些html5的小游戏,加油吧.js原生写的可以说惨 ...
- C#之winform基础 button1_Click(object sender, EventArgs e)中sender是啥及其用法
镇场诗: 大梦谁觉,水月中建博客.百千磨难,才知世事无常. 今持佛语,技术无量愿学.愿尽所学,铸一良心博客.---------------------------- ...
- MyBatis环境搭建
什么是MyBatis: MyBatis 是支持定制化 SQL.存储过程以及高级映射的优秀的持久层框架(O object R relatoin M mapping 框架),MyBatis 避免了几 乎所 ...
- 编写一个Car类,具有final类型的属性品牌,具有功能drive; 定义其子类Aodi和Benchi,具有属性:价格、型号;具有功能:变速; 定义主类E,在其main方法中分别创建Aodi和Benchi的对象并测试对象的特 性。
package b; public class Car { public final static Car pinpai=new Car(); public static Car instance() ...
- ZOJ 1015 Fishing Net(判断弦图)
题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=15 题意:给定一个图.判断是不是弦图? 思路:(1)神马是弦图?对于一 ...