我有两张桌子,比如tableA
和tableB
:
TableA
:
AID Another_A_ID
1 A
2 A
3 A
4 B
5 B
6 C
TableB
:
AID Name
1 a_a_name
1 a_b_name
1 a_c_name
1 a_d_name
2 a_a_name
2 a_b_name
2 a_c_name
2 a_d_name
3 a_a_name
3 a_a_name
3 a_a_name
3 a_a_name
4 b_a_name
4 b_b_name
5 b_a_name
5 b_b_name
如何为tableB.name
中的每个Another_A_Id
获取tableA
?
以下是我的尝试:
Select distinct tA.Another_A_ID, tB.name
from tableA tA
Inner Join tB on tA.AID = tB.AID
会为Another_A_ID
我在这看的是
Another_A_ID Name
A a_a_name
A a_b_name
A a_c_name
A a_d_name
B b_a_name
B b_b_name
答案 0 :(得分:2)
我不确定为什么这不会产生你期望的答案:
SELECT a.Another_A_ID, b.Name
FROM dbo.tableA AS a
INNER JOIN dbo.TableB AS b
ON a.AID = b.AID
GROUP BY a.Another_A_ID, b.Name;
事实上,this SQLfiddle证明您的查询有效(就像我的一样)。如果您遗漏了任何详细信息,请添加它们。