我有2个表( A和B ),另一个表( C )是这两个表之间的映射表。
我想从A和B中选择所有列,其中A.id与任何B.id映射。
这样的事情:
SELECT * FROM A, B WHERE A.id = C.A_id AND B.id = C.B_id
答案 0 :(得分:1)
您的问题非常清楚,但请试试。
根据您发布的内容,我假设您想加入table_A - joining_table_c - table_b
(多对多关系):
CREATE TABLE #A(ID INT, name VARCHAR(100));
CREATE TABLE #B(ID INT, col VARCHAR(100));
CREATE TABLE #C(ID_a INT, ID_b INT);
INSERT INTO #A VALUES (1, 'aa'), (2,'bbb'), (3, 'ccc');
INSERT INTO #B VALUES (10, 'xxxx'), (11,'yyy'), (12, 'zzz');
INSERT INTO #C VALUES (1,10), (1, 11), (2, 12), (3, 10);
SELECT a.*, b.*
FROM #A a
JOIN #C c
ON a.ID = c.ID_a
JOIN #B b
ON b.ID = c.ID_b;
的 LiveDemo
强>
答案 1 :(得分:0)
Select table1.*,table2.*,table3.*
form table1
inner join table2
on table2.table1_id=table1.id
inner join table3
on table3.table1_id=table1.id