mysql join规则?
MySQL的join用法主要有三种:inner jon 内连接,left join 左连接,right join 右连接。
内连接又叫等值连接,此时的inner可以省略。获取两个表中有匹配关系的记录,即两表取交集。
以左表为基础,获取匹配关系的记录,如果右表中没有匹配项,NULL表示。
以右表为基础,获取匹配关系的记录,如果左表中没有匹配项,NULL表示。
innerjoin和outerjoin的区别?
inner join是内连接,查询两个表中字段的值必须相等(a.id=b.id),如果a.id存在(1、1、1、1)而b.id只存在(1),那么会有四行结果(及笛卡尔积),b.id重复三次。
select *from a inner join bon a.id=b.id outer join分为左外连接,右外连接两个:left outer join ,right outer join。 用上面的例子:left outer join(a left outer join b,那么这里要看左边的脸色,一切向左边看齐,先把左边表全显示了,右边满足条件a.id=b.id的显示,不满足显示为空) 右连接同理。

