MySQL中联结查询类型
时间: 2023-10-30 09:07:19 浏览: 165
MySQL中的联结查询类型与标准SQL中的相同,包括:
1. 内联结(Inner Join):只返回两个表中满足联结条件的行,即两个表中的匹配行。语法:SELECT * FROM table1 INNER JOIN table2 ON table1.column = table2.column;
2. 左外联结(Left Outer Join):返回左表中所有行和右表中满足联结条件的行,如果右表中没有匹配行,则用 NULL 值填充。语法:SELECT * FROM table1 LEFT JOIN table2 ON table1.column = table2.column;
3. 右外联结(Right Outer Join):返回右表中所有行和左表中满足联结条件的行,如果左表中没有匹配行,则用 NULL 值填充。语法:SELECT * FROM table1 RIGHT JOIN table2 ON table1.column = table2.column;
4. 全外联结(Full Outer Join):返回左表和右表中所有的行,如果没有匹配行,则用 NULL 值填充。MySQL不支持全外联结,但可以通过左外联结和右外联结的联合实现。
5. 自联结(Self Join):将同一表的不同行视为两个不同的表,然后进行联结操作。语法:SELECT * FROM table1 t1 INNER JOIN table1 t2 ON t1.column = t2.column;
6. 交叉联结(Cross Join):也称为笛卡尔积,返回两个表中所有可能的组合。语法:SELECT * FROM table1 CROSS JOIN table2;
阅读全文