在 SQL 存储过程中,可以使用 CASE WHEN
语句进行条件判断并返回相应的结果。以下是一个简单的示例,展示了如何在存储过程中使用 CASE WHEN
:
CREATE PROCEDURE GetEmployeeSalary
@EmployeeID INT
AS
BEGIN
DECLARE @Salary DECIMAL(10, 2)
-- 假设我们有一个名为 Employee 的表,其中包含 EmployeeID 和 Salary 列
SELECT @Salary = CASE
WHEN @EmployeeID = 1 THEN 50000
WHEN @EmployeeID = 2 THEN 60000
WHEN @EmployeeID = 3 THEN 70000
ELSE 0
END
-- 输出员工工资
PRINT @Salary
END
GO
在这个示例中,我们创建了一个名为 GetEmployeeSalary
的存储过程,该过程接受一个参数 @EmployeeID
。我们使用 CASE WHEN
语句根据 @EmployeeID
的值来设置 @Salary
变量的值。最后,我们使用 PRINT
语句输出员工的工资。
要调用此存储过程,可以使用以下语句:
EXEC GetEmployeeSalary @EmployeeID = 1
这将输出 50000
,因为 @EmployeeID
为 1
。