sqlserver 求一句SQL语句

quanwei9958 发布于 2015/05/17 15:00
阅读 133
收藏 0

 有一个这个表

       name,time,record

         小明  3月3  80

         小红  3月4 60

         小明  6月8  100

如何查询name下最新时间的分数

以下是问题补充:

@quanwei9958:比如我查询一个人最新的时间就是 select name,max(time) from table group by name; 请问我如何把最新的time对应的record加上去? (2015/05/17 15:35)
加载中
0
later001
later001
APP加入sdk短代亲会吗?995787390交流下.
0
shijacky
shijacky
select record from table where name = xxxx order by time desc limit 1
quanwei9958
quanwei9958
我没表达清楚,我想要name分组后最新时间和分数 比如上面那个查询后应该是 小明 6月8 100 小红 3月4 60
0
shijacky
shijacky
select name, record, max(time) from table group by name  
shijacky
shijacky
回复 @quanwei9958 : mysql 是可能的
quanwei9958
quanwei9958
这样会提示 record不在聚合函数货group by 字句中 我也因为这个而头大,sqlite数据库可以这样用
0
铂金胖子
铂金胖子

用分组的方式

select * from table where ( name, time ) in 
	( select name, max(time) from table group by name )



0
ericsoul
ericsoul
用not exists,逻辑是 不存name相等,时间比当前记录大的,那么当前记录就是 时间最新的。
0
Soong
Soong
select name,time,record from table where time in 
	(select max(time) from table group by name)
            order by record desc



返回顶部
顶部