数据库中,如何分组查询,得到所有信息呢?

假如数据库有10个字段,包括用户名称、用户信息、创建时间,等

select max(id),userName,userInfo,createTime from userTabel group by userName,userInfo,createTime

这样只能得到用户名称、用户信息、创建时间,并不会得到10个字段的信息,

是否是这样

select * from userTabel where id in(
select id from (select max(id),userName,userInfo,createTime from userTabel group by userName,userInfo,createTime ))

这样呢??

有没有更好的方法

第1个回答  2017-04-08
GROUP BY 语句用于结合合计函数,根据一个或多个列对结果集进行分组。 group by 也可以同时使用多个字段进行分组 例子: 假设一个表tab有一个id字段、一个Name字段,内容如下 id Name 三 张三 5 李四 一 王五 一 赵六 sql 语句 select * from tab group by id 这条SQL的结果应该是 id Name 一 王五 三 张三 5 赵六 第一个Name显示的是王五 因为sql group by满足条件的有多个时是取第一个的 上面的结果并没有什么实际意义 group by 一般结合合计函数一起使用 比如 sql语句 select id, count(*) total from tab group by id 用于统计每个id有中国个 结果 id total 一 二 三 一 5追问

和题目不符的答案啊。我想得到所有的信息

本回答被网友采纳
相似回答