我有以下包含此数据的视图
ActivityRecId RegionRecId IsExcluded
1 null 1
2 null 1
3 1 1
3 2 1
4 1 1
5 null 0
我想要做的是将区域表加入上面的视图以获取以下记录。
ActivityRecId RegionRecId IsExcluded
1 null 1
2 null 1
3 1 1
3 2 1
3 3 0
3 4 0
4 1 1
4 2 0
4 3 0
4 4 0
5 null 0
区域表格包含以下列:
任何建议。如果您需要任何其他信息,请与我们联系。
--------------------- CORRECT QUESTION ------------------------
ActivityRecId RegionRecId IsExcluded
1 null 1
2 null 1
3 1 1
3 2 1
3 3 0
3 4 0
4 1 1
4 2 0
4 3 0
4 4 0
5 1 0
5 2 0
5 3 0
5 4 0
如果它更容易,活动1和2也可以列出所有区域。
谢谢,
答案 0 :(得分:0)
Here很好地参考了看联接。我认为你需要一个左外连接
答案 1 :(得分:0)
我没有一个SQL Server方便测试这个,但是会像
那样select *
from myView
union
select myView.ActivityRecId,
region.RegionRecId,
0 as IsExcluded
from myView cross join region
where (myView.RegionRecId is not null or myView.IsExcluded = 0)
and not exists (
select null
from myView
where myView.RegionRecId = region.RegionRecId
)
是你想要的吗?