![]() |
MySQL数据库三个表的左连接查询(LEFT JOIN)
LEFT JOIN可以实现同一数据库多表联合查询符合条件的数据,以前我讲到最多的是使用LEFT JOIN实现两个表连接查询,下面看一个简单三表联合查询sql吧。
三个表联合查询我们可以使用如下语法 代码如下 select * from a left join b on a.id=b.id left join c on b.id=c.id 例子 现在要做的是:列出所有用户,以及他们所属的部门和职位。 tb_user 用户 id sName id_Pos 1 李好 2 2 好内 3 3 小外 1 tb_pos 职位 id sCaption id_Dpt 1 经理 0 2 程序 1 3 1 tb_dpt 部门 id sCaption 1 设计部 2 运维部 由于要列出tb_user中的每一条记录,这里我们需要用左连接查询。而这里要连接3个表,所以应该这样写 代码如下 SELECT u.sName p.sCaption d.sCaption FROM tb_user AS u LEFT JOIN (tb_pos AS p LEFT JOIN tb_dpt AS d ON p.id_Dpt=d.id) ON u.id_Pos=p.id; 然后运行之后就出来了tb_user新表了,方法是不是非常的简单啊,这里也是用到了left join联合查询了。 ==================== 调用ZEN-CART中最新10条产品评论, 同时带上产品链接就可用这方法. Code:
$sql = "SELECT rd.reviews_text,seo.seo_url FROM reviews_description AS rd LEFT JOIN (reviews AS r LEFT JOIN seo_url AS seo ON r.products_id=seo.products_id) ON rd.reviews_id=r.reviews_id and r.status = 1 order by r.reviews_id DESC limit 10"; |
| All times are GMT +8. The time now is 12:01 PM. |
Powered by vBulletin Version 3.8.7
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.