连接查询分为内连、外连:外连又分为左连、右连;内连是两张表相同的字段匹配符合就查出,外连是两张
表相同的字段匹配上了 就查出,没匹配上的显示NULL
1、选择两张表的字段 查询
不使用内连或外连关键字,直白的查询。
拿出两张表比相同价格的字段行
mysql> select tb_1.id, tb_1.name, tb_2.id, tb_2.name
-> from tb_1, tb_2
-> where tb_1.id > 3;
2、使用 内连查询:理论与上 相同
mysql> select tb_2.id, tb_2.name, tb_3.id, tb_3.name
-> from tb_2 INNER JOIN tb_3
-> ON tb_2.id = tb_3.id;
3、使用外连查询 左连
mysql> select tb_2.id, tb_2.name, tb_2.price, tb_3.id, tb_3.name, tb_3.lies, tb_3.data
-> from tb_2 LEFT OUTER JOIN tb_3
-> ON tb_2.id = tb_3.id;
4、使用外连查询 右连
mysql> select tb_2.id, tb_2.name, tb_2.price, tb_3.id, tb_3.name, tb_3.lies, tb_3.data
-> from tb_2 RIGHT OUTER JOIN tb_3
-> ON tb_2.id = tb_3.id;
5、 使用 复合条件连接查询
复合条件查询是再连接查询的过程里,添加个限制条件查询,这样抓的数据更加细腻
mysql> select tb_2.id, tb_2.name, tb_2.price, tb_3.id, tb_3.name, tb_3.lies, tb_3.data
-> from tb_2 INNER JOIN tb_3
-> ON tb_2.id = tb_3.id AND tb_2.id = 3;