关系划分查询
Relational Division Query
我在 SQL Server 2008 中有树 table 如下:
用户表:
UserID UserName
1 User1
2 User2
3 User3
活动表:
ActivityID Activity
1 A
2 B
3 C
UserAccessTbl(关系部Table):
UserID Activity Access
1 A True
1 B False
2 C True
我想查询这个结果:
UserID Activity Access
1 A True
1 B False
1 C Null
2 A Null
2 B Null
2 C True
3 A Null
3 B Null
3 C Null
你能帮我做一下吗?
我想用它在我的 .Net 应用程序中执行用户访问设置。
坦克
使用交叉连接将 UserTbl 与 ActivityTbl 连接起来
Select * 来自 UsertTbl 交叉连接 ActivityTbl
https://technet.microsoft.com/en-us/library/ms190690%28v=sql.105%29.aspx
这将生成一个包含用户和活动之间所有可能组合的数据集。
- 使用 "left join".
将之前的数据集与 UserAccessTbl 合并
https://technet.microsoft.com/en-us/library/ms187518%28v=sql.105%29.aspx
(注意:您只能在一个查询中完成,只需将两部分连接起来即可)
我在 SQL Server 2008 中有树 table 如下:
用户表:
UserID UserName
1 User1
2 User2
3 User3
活动表:
ActivityID Activity
1 A
2 B
3 C
UserAccessTbl(关系部Table):
UserID Activity Access
1 A True
1 B False
2 C True
我想查询这个结果:
UserID Activity Access
1 A True
1 B False
1 C Null
2 A Null
2 B Null
2 C True
3 A Null
3 B Null
3 C Null
你能帮我做一下吗? 我想用它在我的 .Net 应用程序中执行用户访问设置。 坦克
使用交叉连接将 UserTbl 与 ActivityTbl 连接起来
Select * 来自 UsertTbl 交叉连接 ActivityTbl
https://technet.microsoft.com/en-us/library/ms190690%28v=sql.105%29.aspx
这将生成一个包含用户和活动之间所有可能组合的数据集。
- 使用 "left join". 将之前的数据集与 UserAccessTbl 合并
https://technet.microsoft.com/en-us/library/ms187518%28v=sql.105%29.aspx
(注意:您只能在一个查询中完成,只需将两部分连接起来即可)