Sim*_*ons 0 sql sql-server sql-server-2008
我有以下 SQL,
DECLARE @EmployeeID Int
SELECT *
FROM [Northwind].[dbo].[Orders]
WHERE OrderID = 10248
AND EmployeeID = @EmployeeID
Run Code Online (Sandbox Code Playgroud)
我想确定 IF @EmployeeID IS NULL然后不包括AND
就像是,
SELECT *
FROM [Northwind].[dbo].[Orders]
WHERE OrderID = 10248
IF @EmployeeID IS NOT NULL
AND EmployeeID = @EmployeeID
Run Code Online (Sandbox Code Playgroud)
我可以考虑创建一个表变量,然后根据参数值对其进行过滤,但是有没有更好的方法?
我想你想要:
WHERE OrderID = 10248 AND
(@EmployeeId IS NULL OR EmployeeID = @EmployeeID)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2535 次 |
| 最近记录: |