定义一个匿名块,查询雇员FORD所在部门的平均工资,将查询结果放入变量v_avgsal,并在屏幕上显示出来。 要求显示结果格式如下: 雇员FORD所在部门的平均工资为***(或者“The average salary is ***”)。其中***是求得的平均工资。 平均工资要求在数值前显示$,并保留两位小数。
时间: 2023-07-24 20:06:51 浏览: 130
select子查询1
以下是一个SQL语句的例子,可以实现上述要求:
```
DECLARE
v_avgsal NUMBER;
BEGIN
SELECT AVG(sal) INTO v_avgsal
FROM emp
WHERE deptno = (SELECT deptno FROM emp WHERE ename = 'FORD');
DBMS_OUTPUT.PUT_LINE('The average salary is $' || TO_CHAR(v_avgsal, '99999.99'));
END;
```
解释一下上面的SQL语句:
- `DECLARE` 声明一个匿名块。
- `v_avgsal` 定义一个变量,用来保存查询结果。
- `SELECT AVG(sal) INTO v_avgsal` 查询平均工资,并将结果存储到变量 `v_avgsal` 中。
- `FROM emp` 查询 `emp` 表。
- `WHERE deptno = (SELECT deptno FROM emp WHERE ename = 'FORD')` 查询 `FORD` 所在部门的员工。
- `DBMS_OUTPUT.PUT_LINE` 将结果输出到屏幕上,显示格式为 `$***.**`。
注意,以上SQL语句是Oracle数据库的语法,其他数据库可能会有所不同。
阅读全文