首页 新闻 赞助 找找看

sql server 主副表查询问题

0
[已关闭问题] 关闭于 2017-04-19 14:55

有主表A,副表B,主副表是一对多的关系。

请问,

在查询关联信息时,只显示B表第一条符合要求的数据,

且若A表字段Status为1时,B表条件为status为4,否则status不为4.

 

我在用下述sql查B表符合条件的第一条数据时一直不显示a.status !='1'的数据。

select MIN(b.HeaderId),b.TaskId from TaskHeader b,TaskMain a 
where b.TaskId=a.TaskUniqueId and b.Status in( case when a.Status = '1' then '4' else '''0'',''1'',''2'',''3'',''5'',''6''' end ) group by b.TaskId

问题出在in('''0'',''1'',''2'',''3'',''5'',''6''' )

select * from TaskHeader where status in('0','1','2','3','5','6') 能取到数据

 

或者能有更好的办法达到需求就更好...

感谢..

站在那看风景的主页 站在那看风景 | 菜鸟二级 | 园豆:371
提问于:2017-04-08 14:41
< >
分享
所有回答(3)
0

好复杂

idlo | 园豆:241 (菜鸟二级) | 2017-04-08 14:56
0

可以分解成视图。逻辑就会很清晰。

Firen | 园豆:5385 (大侠五级) | 2017-04-08 19:42
0

感觉不难啊

悦光阴 | 园豆:2251 (老鸟四级) | 2017-04-09 17:20
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册