有没有办法以下列方式使用变量?
DECLARE @ID int;
SET @ID = NULL;
SELECT *
FROM Market market
WHERE market.ID IS @ID
Run Code Online (Sandbox Code Playgroud)
或者还有另一种方法吗?
谢谢.
Mar*_*ith 12
你需要这样做
SELECT *
FROM Market market
WHERE market.ID = @ID OR (@ID IS NULL AND market.ID IS NULL)
Run Code Online (Sandbox Code Playgroud)
只是为了完整性,目前仍有可能
SET ANSI_NULLS OFF
SELECT *
FROM Market market
WHERE market.ID = @ID
Run Code Online (Sandbox Code Playgroud)
但你不应该.不推荐使用此选项.相当有趣的相关博客文章