首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

求一句SQL,多谢

2013-10-12 
求一句SQL,谢谢!表结构:记录聊天消息/*对方ID*//*收到消息时间*//*消息内容*//*消息标记,1:已读;2:未读*

求一句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 )

热点排行