创建存储过程 calc_avg_salary_for_emp_no, 其有两个参数:empno,INT 类型,输入型,指定员工编号; average,REAL 类型,输出型,保存工资平均值。 该存储过程的功能是:计算编号为 empno 的员工在工资表 salaries 中的工资 数额的平均值,并将该平均值保存到 average 参数中。
时间: 2023-06-24 07:05:55 浏览: 100
带输出参数的存储过程
请参考以下 SQL 代码来创建该存储过程:
```
CREATE PROCEDURE calc_avg_salary_for_emp_no
@empno INT,
@average REAL OUTPUT
AS
BEGIN
SELECT @average = AVG(salary)
FROM salaries
WHERE emp_no = @empno
END
```
该存储过程有两个参数:@empno 是一个整数类型的输入参数,用来指定员工编号;@average 是一个实数类型的输出参数,用来保存工资平均值。
在存储过程中,使用 SELECT 语句来计算编号为 @empno 的员工在工资表 salaries 中的工资数额的平均值,并将该平均值赋值给 @average 参数。
要调用该存储过程,可以使用以下代码:
```
DECLARE @avg_salary REAL
EXEC calc_avg_salary_for_emp_no @empno = 10001, @average = @avg_salary OUTPUT
SELECT @avg_salary
```
在这个例子中,我们声明了一个名为 @avg_salary 的实数类型的变量,然后调用存储过程 calc_avg_salary_for_emp_no,指定 @empno 参数的值为 10001,将 @avg_salary 参数作为输出参数传递。最后,我们使用 SELECT 语句显示 @avg_salary 变量的值,即工资平均值。
阅读全文