面试题答案
一键面试适合使用SQLite视图的场景
- 简化复杂查询:当涉及多表关联、嵌套子查询等复杂操作时,将复杂查询封装为视图,后续可通过简单的视图查询获取结果,提高查询的复用性和可维护性。例如,在一个包含员工表、部门表、项目表等多张表的数据库中,若经常需要查询员工所在部门及参与项目的相关信息,可创建视图简化此复杂查询。
- 数据安全与权限控制:通过视图可限制用户对敏感数据的访问。比如只允许某些用户通过视图查看部分字段或特定条件的数据,而无法直接访问完整的表。例如,员工表中有工资、联系方式等字段,只允许经理级别用户查看工资字段,普通员工通过视图只能看到基本信息。
- 数据聚合与分析:在需要对数据进行汇总、统计等聚合操作并反复使用结果时,视图能提供便利。如按时间段统计销售额、按部门统计员工平均工资等场景。
创建视图的SQL语句
CREATE VIEW department_avg_salary AS
SELECT department, AVG(salary) AS average_salary
FROM employees
GROUP BY department;