在 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
。