2016-06-17 71 views
0

在SQL Server樹表2008下方喜歡:關係科查詢

UserTbl:

UserID  UserName 
1   User1 
2   User2 
3   User3 

ActivityTbl:

ActivityID Activity 
1   A 
2   B 
3   C 

UserAccessTbl(關係司表):

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應用程序中執行用戶訪問設置。 坦克

+0

搜索上CROSS JOIN和嘗試 – Ako

回答

1
  1. 加入UserTbl與使用交叉連接

    從UsertTbl交叉選擇*加入ActivityTbl

https://technet.microsoft.com/en-us/library/ms190690%28v=sql.105%29.aspx

這將導致所有可能的數據集ActivityTbl用戶和活動之間的組合。

  1. 使用「左連接」將前一個數據集與UserAccessTbl連接起來。

https://technet.microsoft.com/en-us/library/ms187518%28v=sql.105%29.aspx

(注:你能做到這一點的只有一個查詢,只是加入了兩件)

+0

這是非常容易的!謝謝你的幫助。 –

+0

歡迎您:) – RojoSam