读书人

求一句SQL多谢

发布时间: 2013-10-12 11:54:04 作者: rapoo

求一句SQL,谢谢!
表结构:<记录聊天消息>

/*对方ID*/ /*收到消息时间*/ /*消息内容*/ /*消息标记,1:已读;2:未读*/
userid time content msgflag

一句SQL得到与每个用户最近的一条聊天记录,并得到未读消息数目。

谢谢!
[解决办法]
select * ,c.[count]
from tab a inner join (select userid,count(1) [count] from tab where msgflag=2 group by userid) c on a.userid=c.userid
where exists
(select 1 from (
select userid,max(time) time
from tab
group by userid)b where a.userid=b.userid and a.time=b.time )

读书人网 >SQL Server

热点推荐