推荐答案
SELECT columns FROM table1 INNER JOIN table2 ON table1.column = table2.column;
本题详细解读
什么是内连接 (INNER JOIN)?
内连接(INNER JOIN)是 SQL 中最常用的连接类型之一。它用于从两个或多个表中返回满足连接条件的行。只有当两个表中的指定列的值匹配时,才会返回相应的行。
内连接的语法
SELECT columns FROM table1 INNER JOIN table2 ON table1.column = table2.column;
SELECT columns
: 指定要查询的列。FROM table1
: 指定第一个表。INNER JOIN table2
: 指定要与第一个表连接的表。ON table1.column = table2.column
: 指定连接条件,即两个表中用于匹配的列。
内连接的工作原理
内连接通过比较两个表中的指定列的值,返回所有匹配的行。如果某一行在其中一个表中没有匹配的行,则该行不会出现在结果集中。
示例
假设有两个表:employees
和 departments
。
employees
表:employee_id name department_id 1 Alice 101 2 Bob 102 3 Carol 103 departments
表:department_id department_name 101 HR 102 IT 104 Finance
使用内连接查询员工及其所属部门的名称:
SELECT employees.name, departments.department_name FROM employees INNER JOIN departments ON employees.department_id = departments.department_id;
结果集:
name | department_name |
---|---|
Alice | HR |
Bob | IT |
在这个例子中,Carol
和 Finance
部门没有出现在结果集中,因为它们在另一个表中没有匹配的行。
注意事项
- 内连接只返回匹配的行,不匹配的行不会出现在结果集中。
- 如果两个表中有多个匹配的行,结果集将包含所有可能的组合。
- 内连接可以连接多个表,只需在
INNER JOIN
后继续添加表和连接条件即可。