(4)基于2个表根据嵌套操作定义视图。
时间: 2024-10-22 09:18:01 浏览: 16
视图的定义与操作.doc
在数据库设计中,创建基于两个或更多表的视图(View)时,如果需要通过嵌套查询(Nested Query)或子查询(Subquery)来组合数据,可以定义嵌套视图。这种视图允许你在定义视图时使用另一个查询的结果作为输入条件、分组依据或其他部分的计算基础。
例如,假设你有两个表,一个是`Employees`(员工信息),另一个是`Departments`(部门信息)。如果你想创建一个视图,显示每个员工所在的部门名称以及该部门的平均工资,你可以这样做:
```sql
CREATE VIEW EmployeeDepartmentStats AS
SELECT E.EmployeeName, D.DepartmentName, AVG(E.Salary) as AverageSalary
FROM Employees E
INNER JOIN Departments D ON E.DepartmentID = D.DepartmentID
GROUP BY E.EmployeeName, D.DepartmentName;
```
在这个例子中,视图`EmployeeDepartmentStats`是基于`Employees`表和嵌套查询`D.DepartmentName FROM Departments D WHERE D.DepartmentID = E.DepartmentID`定义的,它返回了员工姓名、部门名以及该部门所有员工的平均薪资。
阅读全文