Oracle SQL 查询高于部门平均工资的员工信息
问题: 已知 Oracle 数据库中有员工表 emp,员工姓名是 ename 部门号为 deptno,工资为 sal。请写出查询高于自己部门平均工资的员工信息。
答案:
SELECT emp.*
FROM emp
WHERE emp.sal > (
SELECT AVG(emp.sal)
FROM emp
WHERE emp.deptno = emp.deptno
)
AND emp.deptno = emp.deptno;
问题: 视图是什么,有什么作用?
答案:
视图是一种虚拟表,是基于 SELECT 语句的结果集,可以看作是对一个或多个表的引用。视图并不在数据库中保存实际的数据,而是动态生成的。视图可以简化复杂的查询,隐藏表的细节,保护敏感数据等。视图的作用包括但不限于:
- 简化查询操作
- 提高数据安全性
- 实现数据访问控制
- 实现数据约束等
问题: NVL 是什么?
答案:
NVL 是 Oracle 数据库中的一个函数,用于判断一个值是否为空(NULL),如果为空则返回指定的默认值,如果不为空则返回该值本身。其语法如下:
NVL(expression, default_value)
其中,expression 表示要判断的值,default_value 表示默认值。如果 expression 为空,则返回 default_value,否则返回 expression。
问题: 谢谢!
答案: 不用谢,有什么需要帮忙的可以再问我哦。
原文地址: https://www.cveoy.top/t/topic/nZVM 著作权归作者所有。请勿转载和采集!