Ric*_*ich 5 sql conditional if-statement case where
我在这里阅读了大量的问答,但没有一个符合我想要实现的目标.我甚至不知道这是否可能!任何帮助/建议将不胜感激.
我正在尝试构建一个WHERE基于的条件子句
CustID (int) = @CustomerID
Run Code Online (Sandbox Code Playgroud)
如果@CustomerID = 0那时我想要结果WHERE CustID > 0(即返回所有客户),否则我只想要某些客户CustID = @CustomerID
这可能吗?
这样的事情?
SELECT *
FROM YOURTABLE
WHERE
( CASE
WHEN @CustomerID = 0 THEN CustID
ELSE 1
END
) > 0
AND
( CASE
WHEN @CustomerID <> 0 THEN @CustomerID
ELSE CUSTID
END
) = CUSTID
Run Code Online (Sandbox Code Playgroud)