1、左连接的语法
假设A表在左边并且不动,B表在A表的右边滑动,A表与B表通过一个关系筛选B表的行。
语法:A left join B on 条件 条件为真,则B表对应的行取出
A left join B on 条件 这块形成的也是一个结果集,也可以看成一张表,设为C表。
即如此,可以对C表做查询,则where、group、having、order by、limit照常使用。
2、左连接举例解释说明
select goods_id,goods_name,goods_number,shop_price,cat_name from goods left join category on goods.cat_id = category.cat_id + where/group/order by/having/limit等判读语句;
上面所指的C相当于goods left join category on goods.cat_id = category.cat_id;
解释一下:goods表再在catergory表的左边,通过条件判断:goods.cat_id = category.cat_id,实现goods表与catergory左连接,条件为真,拿出category.表名为cat_id。
3、实际操作与案例
Ecshop中进行goods表与category表左连接,实现查询。
(1)取出第4个栏目下的商品,以及商品的栏目名。
C = minigoods left join category on where minigoods.cat_id = category.cat_id;
select goods_id,goods_name,cat_id,cat_name from C where goods.cat_id=4;
整体语句是:select goods_id,goods_name,cat_name from goods left join category on goods.cat_id = category.cat_id where goods.cat_id=4;
输出结果:
(2)给上面例子增加cat_id使其更清晰
select goods_id,goods_name,goods.cat_id,cat_name from goods left join category on goods.cat_id = category.cat_id where goods.cat_id=4;