自然连接(Natural Join)是一种特殊的等值连接,它基于两个表中所有同名的属性进行连接。自然连接会自动匹配并连接两个表中具有相同名称和数据类型的列。
自然连接主要分为两种类型:
自然连接常用于以下场景:
假设有两个表 employees
和 departments
,它们都有一个共同的列 department_id
。
-- 创建 employees 表
CREATE TABLE employees (
employee_id INT PRIMARY KEY,
name VARCHAR(50),
department_id INT
);
-- 创建 departments 表
CREATE TABLE departments (
department_id INT PRIMARY KEY,
department_name VARCHAR(50)
);
-- 插入示例数据
INSERT INTO employees (employee_id, name, department_id) VALUES
(1, 'Alice', 101),
(2, 'Bob', 102),
(3, 'Charlie', 101);
INSERT INTO departments (department_id, department_name) VALUES
(101, 'HR'),
(102, 'Engineering');
使用自然连接查询员工及其所在部门:
SELECT employees.employee_id, employees.name, departments.department_name
FROM employees
NATURAL JOIN departments;
希望这些信息对你有所帮助!如果有更多问题,请随时提问。
领取专属 10元无门槛券
手把手带您无忧上云