gpt4 book ai didi

sql-server-2008 - 避免 IF ELSE 由于变量为 NULL

转载 作者:行者123 更新时间:2023-12-04 17:22:20 28 4
gpt4 key购买 nike

我有一些代码,其中 WHERE 子句中使用的变量可以为空。因此,我必须使用 IF ELSE 查询数据以检查 NULL。有没有写在一个查询中?

DECLARE @OrderID UNIQUEIDENTIFIER

IF @OrderID IS NULL
BEGIN
SELECT *
FROM Customers
WHERE OrderID IS NULL
END
ELSE
BEGIN
SELECT *
FROM Customers
WHERE OrderID = @OrderID
END

最佳答案

  SELECT * 
FROM Customers
WHERE EXISTS (SELECT OrderID INTERSECT SELECT @OrderID)

将有效地做到这一点。

Undocumented Query Plans: Equality Comparisons了解更多。

关于sql-server-2008 - 避免 IF ELSE 由于变量为 NULL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19682956/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com