avatar

目录
sql-views-example

SQL视图示例

假设我们有以下两个表:

员工表 (Employees)

EmployeeID Name DepartmentID Salary
1 张三 1 5000
2 李四 2 6000
3 王五 1 5500

部门表 (Departments)

DepartmentID DepartmentName
1 销售部
2 技术部

现在,我们创建一个视图来显示员工的详细信息,包括他们的部门名称:

sql
1
2
3
4
5
6
7
8
9
10
CREATE VIEW EmployeeDetails AS
SELECT
e.EmployeeID,
e.Name,
d.DepartmentName,
e.Salary
FROM
Employees e
JOIN
Departments d ON e.DepartmentID = d.DepartmentID;

使用这个视图:

sql
1
SELECT * FROM EmployeeDetails;

结果:

EmployeeID Name DepartmentName Salary
1 张三 销售部 5000
2 李四 技术部 6000
3 王五 销售部 5500

我们还可以在视图上应用条件:

sql
1
SELECT * FROM EmployeeDetails WHERE DepartmentName = '销售部';

结果:

EmployeeID Name DepartmentName Salary
1 张三 销售部 5000
3 王五 销售部 5500

视图也可以被用于更新操作(在某些情况下):

sql
1
2
3
UPDATE EmployeeDetails
SET Salary = 5200
WHERE EmployeeID = 1;

这会更新底层的Employees表。


评论