求一个sql语句或者逻辑、思路

renningshu6136 2017-10-11 10:20:48
SELECT p.IdNumber 证件号,p.Name 姓名,case when COUNT(pc.Id) >0 then
CASE WHEN SUM(CAST(IsValidity AS INT))>=1 THEN '1' ELSE '2' END
ELSE '3' end AS 单位地址
from PersonContacts pc
inner join BaseCodes bc on bc.Id = pc.TypeId
inner join PersonAccounts pa ON pa.Id = pc.PersonAccountId
inner join Persons p on p.Id = pa.PersonId
where bc.CodeValue = '单位地址' AND p.name='鲍' AND p.IdNumber='332603196402284999'
group BY p.Name,p.IdNumber

问题:where的三个条件是查不出来数据的,我的目标是输出 |证件号|姓名|3| 来表示无数据,但是现在却是进不去else里,输出为空的,求解答
...全文
362 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
二月十六 2017-10-11
  • 打赏
  • 举报
回复
没有这个条件的证件号和姓名,显示什么呢?肯定是没数据了。显示3的前提是有数据查询出来,现在没数据能查出来,所以也就没有后边的123了。

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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