MySql中表的连接方式分为:内连接,外连接,交叉连接,以下将分别介绍:
测试环境:数据库中已创建下面两张表,一张顾客的信息,一张订单信息
customers表:
orders表:
1.外连接:左外连接(LEFT OUTER JOIN简写为LEFT JOIN),右外连接(RIGHT OUTER JOIN 简写为RIGHT JOIN),全外连接(FULL JOIN)
左外连接,右外连接:都会以第一个表为基准,基表的所有行,列都会显示,外表如果和条件不匹配则所有外表的列值都为NULL
全外连接--两个表的行和列都显示,条件不匹配的填写NULL,可是不明白这里为什么报错误??
2.内连接:用比较运算符比较要连接的列的值,不匹配的行不会被显示
3.交叉连接:一般没有where条件或者on条件,交叉连接产生的连接表为两个表的笛卡尔积
上面同这种:
交叉连接中如果也有条件则和内连接类似