mysql> select * from test;

+----+-------+------+-------+

| id | name | age | class |

+----+-------+------+-------+

| 1 | qiu | 22 | 1 |

| 2 | liu | 42 | 1 |

| 4 | zheng | 20 | 2 |

| 3 | qian | 20 | 2 |

| 0 | wang | 11 | 3 |

| 6 | li | 33 | 3 |

+----+-------+------+-------+

6 rows in set (0.00 sec)

如果想找到每个class里面的最大的age,则需要使用group by和max。

如下的sql语句,则输出结果有错误:

mysql> select id,name,max(age),class from test group by class;

+----+-------+----------+-------+

| id | name | max(age) | class |

+----+-------+----------+-------+

| 1 | qiu | 42 | 1 |

| 4 | zheng | 20 | 2 |

| 0 | wang | 33 | 3 |

+----+-------+----------+-------+

3 rows in set (0.00 sec)

虽然找到的age是最大的age,但是与之匹配的用户信息却不是真实的信息,而是group by分组后的第一条记录的基本信息。

如果我使用以下的语句进行查找,则可以返回真实的结果。

mysql> select * from (

-> select * from test order by age desc) as b

-> group by class;

+----+-------+------+-------+

| id | name | age | class |

+----+-------+------+-------+

| 2 | liu | 42 | 1 |

| 4 | zheng | 20 | 2 |

| 6 | li| 33 | 3 |

+----+-------+------+-------+

3 rows in set (0.00 sec)

原文来自:

MySQL中group_concat函数-和group by配合使用

MySQL中group_concat函数 完整的语法如下: group_concat([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] [Separator '分隔 ...

mysql中MAX()函数和count()函数的技巧使用

1.max()函数 在考虑提高数据库io的情况下,可以创建索引 ===>create index 索引名称 on 表名(列名); 2.count()函数 问题:count(*)与count(某列 ...

Mysql中max函数取得的值不是最大

①问题:遇到一个很有意思的问题,这里记录一下, 就是在使用max函数的时候发现取得的最大值其实不是最大值. 比如: 某一列中有10000000,和9999999, 其最大值应该是10000000但是查 ...

MySQL中group_concat函数 --- 很有用的一个用来查询出所有group by 分组后所有 同组内的 内容

本文通过实例介绍了MySQL中的group_concat函数的使用方法,比如select group_concat(name) . MySQL中group_concat函数 完整的语法如下: grou ...

mysql 中order by 与group by的顺序

mysql 中order by 与group by的顺序 是: select from where group by order by 注意:group by 比order by先执行,order b ...

MySQL中count函数使用方法详解

count函数是用来统计表中或数组中记录的一个函数,下面我来介绍在MySQL中count函数用法与性能比较吧. count(*) 它返回检索行的数目, 不论其是否包含 NULL值. SELECT ...

thinkphp中的内置操作数据库与mysql中的函数汇总

8.4.4 Model类getModelName() 获取当前Model的名称getTableName() 获取当前Model的数据表名称switchModel(type,vars=array()) ...

MySQL中concat函数(连接字符串)

MySQL中concat函数使用方法:CONCAT(str1,str2,…) 返回结果为连接参数产生的字符串.如有任何一个参数为NULL ,则返回值为 NULL. 注意:如果所有参数均为非二进制字符串 ...

MySQL中concat函数

MySQL中concat函数使用方法:CONCAT(str1,str2,…) 返回结果为连接参数产生的字符串.如有任何一个参数为NULL ,则返回值为 NULL. 注意:如果所有参数均为非二进制字符串 ...

随机推荐

Jenkins 笔记

1.Jenkins是什么? 他是一个开源的自动化服务器,持续集成工具.由Java和上百个插件组成,支持编译,测试,部署任意的自动化项目. 2.怎么安装Jenkins? 方法一:从官网 https:// ...

2014 ACM/ICPC Asia Regional Xi'an Online Paint Pearls

传说的SB DP: 题目 Problem Description Lee has a string of n pearls. In the beginning, all the pearls have ...

4、记录1----获取hdfs上FileSystem的方法 记录2:正则匹配路径:linux、hdfs

/** * 获取hadoop相关配置信息 * @param hadoopConfPath 目前用户需要提供hadoop的配置文件路径 * @return */ public static Config ...

我是如何将网站全站启用Https的?-记录博客安装配置SSL证书全过程

评论»   文章目录 为什么要Https 如何选择Https 安装部署SSL证书 平滑过渡Https 搜索引擎的响应 启用Https小结 正如大家所看到的,部落全站已经启用了Https访问了,连续几天 ...

重温MFC

1. Button控件 2. 旋转和高级编辑控件 3. 标签控件和属性页 4. 列表控件 5. 树控件 6. 进度条控件和滑动条控件 7. 滚动条 8.工具栏和状态栏

rem自适应

//REM自适应 _resize(); window.addEventListener('resize', _resize, false); function _resize() { var devi ...

Django中Form组件的使用

Form介绍 HTML页面中利用form表单向后端提交数据时,都会写一些获取用户输入的标签并且用form标签把它们包起来. 与此同时我们在好多场景下都需要对用户的输入做校验,比如校验用户是否输入,输入 ...

Linux查看服务器配置常用

1. 内存: free:查看内存   total:总共内存 2. 处理器数量: cat /proc/cpuinfo | grep "processor" | wc -l 3.处理器 ...

mysql 在linux下的启动

启动与停止 1.启动 MySQL安装完成后启动文件mysql在/etc/init.d目录下,在需要启动时运行下面命令即可. [root@test1 init.d]# /etc/init.d/mysql ...

Modularizing your graphQL schemas