求一条sql语句 有表letter,字段letterID,UserID,date,其中letterID为主键(自增的),要找出UserID不相同而且date日期为最晚的列。如果用 select * from letter group by UserID order by date是分组了以后再排序的,不符合要求。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 select a.* from tt ainner join(select UserID,max(`date`) as ma from tt) bon a.UserID=b.UserID and a.`date`=b.ma select a.* from tt ainner join(select UserID,max(`date`) as ma from tt) bon a.UserID=b.UserID and a.`date`=b.ma就这么滴。 参考下贴中的多种方法(N=1)http://topic.csdn.net/u/20091231/16/2f268740-391e-40f2-a15e-f243b2c925ab.html[征集]分组取最大N条记录方法征集,及散分.... 其中的一种方法。select * from letter awhere not exists (select 1 from letter where UserID=a.UserID and date>a.date) 越来越感觉SQL命令的功能,比vfp本身的功能强大 本身select UserID,max(`date`) as ma from tt这个都是错误的吧,晕 select a.* from tt ainner join(select UserID,max(`date`) as ma from tt group by UserID) bon a.UserID=b.UserID and a.`date`=b.ma 请教,删记录 费解的MYSQL错误 触发器中输出信息 修改表的属性及插入文件时出错 救命啊,如何在delphi中访问mysql临时表 有没有对pgsql的分布式数据库系统有了解的? 为什么用了heap结构的表速度没见起色? 怎样在linux下自启动mysql服务器? datetime timestamp查询性能咨询 求助,想要将查询的时间范围限制为2019-06-29 and 2019-10-15,应该怎么写 MySql与MsSql存储过程的区别!! Tomcat连接MySQL出现Query execution was interrupted错误在线等
inner join
(select UserID,max(`date`) as ma from tt) b
on a.UserID=b.UserID and a.`date`=b.ma
select a.* from tt a
inner join
(select UserID,max(`date`) as ma from tt) b
on a.UserID=b.UserID and a.`date`=b.ma
就这么滴。
[征集]分组取最大N条记录方法征集,及散分....
where not exists (select 1 from letter where UserID=a.UserID and date>a.date)
inner join
(select UserID,max(`date`) as ma from tt group by UserID) b
on a.UserID=b.UserID and a.`date`=b.ma