2010-10-06 62 views
0

TABLE1MYSQL连接2台

ID | NAME 
1 | a 
2 | b 
3 | c 
4 | d 

TABLE2

ID | TBL1_ID | NAME 
1 | 2  | x  
2 | 2  | y 
3 | 2  | z 

我想加入两个表来得到表1中的所有记录,所有记录从表2中加入了对ID

此查询只返回1个表中的所有行和第二个表中的1个行。

SELECT a.*, COUNT(a.id) total FROM table1 a 
    LEFT JOIN table2 b ON a.id = b.tbl1_id  
    GROUP BY a.id 
    ORDER BY a.id DESC 

谢谢。

回答

1
SELECT * total FROM table1 a 
    left JOIN table2 b ON a.id = b.tbl1_id 
1

如果你需要加入两个表并显示匹配行的所有领域这应该工作:

SELECT * FROM table1 a 
    LEFT JOIN table2 b ON(a.id = b.tbl1_id) 
+0

您不能在第二个表使用'USING'这里作为连接列' tbl1_id'。 – 2010-10-06 08:54:08

+0

谢谢。你是对的。我纠正了这一点。 – 2010-10-06 08:56:28

+0

它会加入table2中的所有行吗? – miojamo 2010-10-06 11:34:49