SQl左连接查询

时间:2011-02-09 18:28:39

标签: sql mysql

这些是我拥有的表格(我得到了这个):

 table building: b_id(key relation with table build-works b_id):1 2 3 
 field1: buildingA, buildingB,
 buildingC

 table build-works: b_id:1 1 2 3 3 3
 w_id: 1 2 1 1 2 3

 table works: w_id(key relation with table build-works w_id): 1 2 3 4
 field1: electricity, sanitary, shell,
 roofing

现在我想知道每栋建筑的作品? 我怎么能用sql做这个,你能用zend_db给我的例子吗? 的由于

2 个答案:

答案 0 :(得分:0)

假设b_id是构建的主键,(b_id,w_id)是build_works的关键,而w_id是作品的关键,你可以按如下方式进行:

Project_building.field1,works.field1(构建JOIN build_works JOIN工作)

请注意,在进行JOIN时,您必须将作品的field1重命名为其他内容。

另请注意,这可能不是最有效的方法。

答案 1 :(得分:0)

使用左连接,因为它在标题中

SELECT *
FROM   building b 
       LEFT JOIN buildworks bw 
         ON b.b_id = bw.b_od 
       LEFT JOIN works w 
         ON bw.w_id = w.w_id