1.order by 默认按升序排列(asc/desc),多字段排序 order by 字段 排序方式,字段2 排序方式,..;

在分组排序中,排序是对分组后的结果进行排序,而不是在组中进行排序。

select * from stu order by score desc,name asc;//优先score ,然后name排序

2.limit 在语句表示,截取记录的条数。一般和order by 配合使用(大数据下Limit使用

limit[offset][N]

offset: 偏移量   N:条数; 如limit(2,2),即从第三记录开始取两条记录。当一个参数时:limit 2,即从第一条记录开始取2条

select * from ibmng limit ,

3.关于分组和聚合函数的一个问题,(补充

使用聚合函数,分组时其他字段的值是从库中取组第一次出现时对应数据,聚合函数的得到值和其他字段的值并不是原来本该对应的一条记录。只是组合一起

如:以班级进行分组,获取成绩最好的学生,

select name ,max(score) from stu group by bianji;//错误,这样最大成绩对应的学生并不是原学生。

如果你想在学校学生表中获取班级成绩最好的学生信息,如果想使用简单分组是不行,上面已经说明,

方法一:先使用分组查询出班级和最大成绩的结果作为新表,再和原表进行联合查询出所对应的学生信息。(保证有多个相同成绩的存在情况)

方法二:如果是最好成绩只有一个话的特列,倒是可以先按班级和成绩排序结果集再进行分组(利用了分组获取第一次出现的规则)。类似获取商品中每类物品的最高价格的物品:

4子查询 where from exists

where 子查询:聚合函数可以直接用,(差点以为只能在group中使用了,但是一般不能和别的字段一起使用)

使用不同的子查询查出栏目下最新商品(只是id最大的那个为最新)

where

from

exists:查询出有商品的栏目:可以理解成外查询中每条记录,代入到内查询中,如果内查询有结果,就表示外查询的当前记录满足条件。

exists,有点类似in

mysql概要(四)order by ,limit ,group by和聚合函数的特点,子查询的更多相关文章

  1. 关于GROUP BY和聚合函数

    可以这样去理解group by和聚合函数 转自 http://www.cnblogs.com/wiseblog/articles/4475936.html 写在前面的话:用了好久group by,今天 ...

  2. group by 和聚合函数

    group by 的基本用法 group by做为分组来使用,后面为条件,可以有多个条件,条件相同的为一组,配合聚合函数进行相关统计.在不同数据库中用法稍有不同,这里只测试mysql和oracle. ...

  3. sql 学习之 group by 及 聚合函数

    1.在使用 GROUP BY 子句时,Select列表中的所有列必须是聚合列(SUM,MIN/MAX,AVG等)或是GROUP BY 子句中包括的列.同样,如果在SELECT 列表中使用聚合列,SEL ...

  4. group by 和 聚合函数

    1.在oracle中 select * from Table group by id 会报错. 会报不是group by 表达式.为什么一定不能是 * ,而必须是分组的列或者某个列的聚合函数. 在my ...

  5. group by 和 聚合函数的使用

    有这样一个表数据: 学生姓名,学生手机号,上课日期,上课科目 科目分: 语文.数学.英语.计算机 要求统计一个这样子的结果: 学生姓名,学生手机号,第一次上课日期,迄今一共上了多少节课,上的最多的科目 ...

  6. 可以这样去理解group by和聚合函数

    写在前面的话:用了好久group by,今天早上一觉醒来,突然感觉group by好陌生,总有个筋别不过来,为什么不能够select * from Table group by id,为什么一定不能是 ...

  7. 可以这样去理解group by和聚合函数(转)

    http://www.cnblogs.com/wuguanglei/p/4229938.html 写在前面的话:用了好久group by,今天早上一觉醒来,突然感觉group by好陌生,总有个筋别不 ...

  8. GROUP BY 与聚合函数 使用注意点

    表的设计: 表里面的内容: 一:在不使用聚合函数的时候,group by 子句中必须包含所有的列,否则会报错,如下 select name,MON from [测试.] group by name 会 ...

  9. 一文让你彻底理解group by和聚合函数

    知道group by是进行分组查询,但是一直觉得对其理解得不够透彻,在网上扒了一篇文章,我认为写得非常好. 为什么不能够select * from Table group by id,为什么一定不能是 ...

随机推荐

  1. Java编程思想学习笔记——枚举类型

    前言 关键字enum可以将一组具名的值有限集合创建一种为新的类型,而这些具名的值可以作为常规的程序组件使用. 正文 基本enum特性 调用enum的values()方法可以遍历enum实例,value ...

  2. linux echo命令

    该篇文章转载于:http://www.cnblogs.com/ZhangShuo/articles/1829589.html linux的echo命令, 在shell编程中极为常用, 在终端下打印变量 ...

  3. MyEclipse使用笔记

    简单记录下个人常用的一些MyEclipse设置 VS颜色方案 Window-->Preference-->Java->Editor-->Syntax Coloring Clas ...

  4. repo_file_in_folder

    -- Create table create table repo_file ( uuid ), create_time ), creator ), modify_time ), modifier ) ...

  5. html实体转换

    摘要: 在 HTML 中,某些字符是预留的.在 HTML 中不能使用小于号(<)和大于号(>),这是因为浏览器会误认为它们是标签.如果希望正确地显示预留字符,我们必须在 HTML 源代码中 ...

  6. javascript消除字符串两边空格的两种方式,面向对象和函数式编程。python oop在调用时候的优点

    主要是javascript中消除字符串空格,比较两种方式的不同 //面向对象,消除字符串两边空格 String.prototype.trim = function() { return this.re ...

  7. Git中的文件状态和使用问题解决

    (暂存区 即Index In Git) commit 到 local respository的内容,不想push,则使用git reset 将文件状态回转到staged|modified|unstag ...

  8. IOPS性能指标

    如何计算mysql的IOPS? qps 每秒处理的查询数tps 每秒处理的事务数IOPS,每秒磁盘进行的I/O操作次数 今天看到一篇文章说磁盘理论最大IOPS为200左右,我有两个疑问:1.MYSQL ...

  9. PHP代码审计笔记--代码执行漏洞

    漏洞形成原因:客户端提交的参数,未经任何过滤,传入可以执行代码的函数,造成代码执行漏洞. 常见代码注射函数: 如:eval.preg_replace+/e.assert.call_user_func. ...

  10. Four Ways to Create a Thread

    Blaise Pascal Magazine Rerun #5: Four Ways to Create a Thread   This article was originally written ...