在数据库操作中,JOIN是查询多个表数据的重要工具。MySQL提供了多种JOIN类型,帮助我们高效地获取所需信息。下面为大家介绍这7种JOIN方式,配以简单图示和案例,让学习变得轻松有趣!
1️⃣ INNER JOIN
只返回两个表中匹配的记录。例如:`SELECT FROM table1 INNER JOIN table2 ON table1.id = table2.id;`
2️⃣ LEFT JOIN
返回左表的所有记录及右表匹配的记录,未匹配则显示NULL。
`SELECT FROM table1 LEFT JOIN table2 ON table1.id = table2.id;`
3️⃣ RIGHT JOIN
与LEFT JOIN相反,返回右表的所有记录及左表匹配的记录。
`SELECT FROM table1 RIGHT JOIN table2 ON table1.id = table2.id;`
4️⃣ FULL OUTER JOIN
结合LEFT JOIN和RIGHT JOIN,返回所有匹配或不匹配的记录。
`SELECT FROM table1 FULL OUTER JOIN table2 ON table1.id = table2.id;`
5️⃣ CROSS JOIN
笛卡尔积,返回两表所有可能组合。
`SELECT FROM table1 CROSS JOIN table2;`
6️⃣ SELF JOIN
表自身连接,常用于层次结构数据。
`SELECT a.id, b.id FROM table1 AS a, table1 AS b WHERE a.parent_id = b.id;`
7️⃣ NATURAL JOIN
基于相同名称的列自动匹配。
`SELECT FROM table1 NATURAL JOIN table2;`
掌握这些JOIN类型,可以更灵活地处理复杂的数据查询任务哦!💪