我需要使用連接或通過其他方式從表中的兩行中取出單行。我有三個表Account,Account_Perm和User。帳戶表具有一個名爲AccountNum的字段,Account_Perm具有AccountNum,TeamRole和UserName的字段,用戶表具有用戶名。示例數據如下。在SQL Server中連接從表的兩行中獲取單行
- 帳戶==> AccountNum = 1234,5678
- Account_Perm ==> AccountNum = 1234,TeamRole = TeamA; AccountNum = 1234,TeamRole = TeamB
- User ==> TeamRole = TeamA,UserName = John Smith; TeamRole = TeamB,UserName =「凱西布朗」。
我需要使用這些表和我的結果集與列(AccountNum,TeamRole,TeamRole)應該如下。
1234, John Smith, Casey Brown
通過使用加入,我能得到兩行,1234,約翰·史密斯和1234,凱西·布朗。不過,我需要AccountNum,TeamA的用戶名和TeamB的用戶名單獨記錄。
有人可以幫忙嗎?
查詢:
SELECT
A.AccountNum,
A.TeamRole,
U.Name
FROM
Account A,
Account_Perm AA,
User U
WHERE
A.AccountNum = AA.AccountNum
AND AA.TeamRole IN ('TeamA', 'TeamB')
AND AA.UserName = U.Name;
'使用Join' ......請註明您目前的查詢。您的數據非常難以閱讀和理解。 –
選擇A.AccountNum,A.TeamRole,U.Name 從賬戶A,Account_Perm AA,用戶u WHERE \t A.AccountNum = AA.AccountNum AND \t \t AA.TeamRole IN( 'TeamA', 'TeamB' ) AND \t \t AA.UserName = U.Name –
您的數據和問題不清楚,甚至我甚至無法猜測答案。執行以下操作:_編輯_問題以表格形式顯示示例數據,就像SQL查詢返回一樣,然後2)用示例結果顯示示例輸出表。你應該意識到,如果你一開始就這樣做了,你可能已經有了答案。 –