求赐教一sql语句

FocusNT 2014-06-03 01:52:20
有一表聊天信息表table
字段id,sender,receiver,content,isread
要显示如下内容(与我有过聊天的人,包括我发给的或者我接受的),对象这列为与我有过聊天的人
对象 未读数
aaaa 5
bbbb 6

不知道有没有描述清楚
...全文
247 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
發糞塗牆 2014-06-03
  • 打赏
  • 举报
回复
2楼没用group by id...1楼才用了id,你连每个列都没说清楚,我当然用id
FocusNT 2014-06-03
  • 打赏
  • 举报
回复
group by id肯定是不对的
發糞塗牆 2014-06-03
  • 打赏
  • 举报
回复
那你用2楼的试试吧
FocusNT 2014-06-03
  • 打赏
  • 举报
回复
DBA_Huangzj 应该不对,应该是针对sender和receiver进行group才对的。
FocusNT 2014-06-03
  • 打赏
  • 举报
回复
想要数据界面如下的

發糞塗牆 2014-06-03
  • 打赏
  • 举报
回复
select content,sum(case when f_isread=1 then sender else null end )+sum(case when f_isread=1 then receiver else null end)未读数 from table group by content
FocusNT 2014-06-03
  • 打赏
  • 举报
回复
f_isread=1为未读,f_isread=2为已读
FocusNT 2014-06-03
  • 打赏
  • 举报
回复
表结构如下
--小F-- 2014-06-03
  • 打赏
  • 举报
回复
最好把表结构和所需要的结果都列出来。
KeepSayingNo 2014-06-03
  • 打赏
  • 举报
回复

select [对象], sum([未读数]) from
(
select receiver as [对象],1 as [未读数] from [聊天信息表] where sender='我的名称' and isread=0
union all 
select sender as [对象],1 as [未读数] from [聊天信息表] where receiver='我的名称' and  isread=0
)  t group by [对象]
發糞塗牆 2014-06-03
  • 打赏
  • 举报
回复
表数据贴一点来看看,如果有什么特殊规则也说清楚,大概写法: select id,sum(case whe isread=0 then sender else null end )+sum(case whe isread=0 then receiver else null end)未读数 from table group by id 我假设isread=0的为未读

34,837

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧