我的脚本有一个并不总是包含值的变量。如果有值,我需要一个额外的WHERE
子句。
DECLARE @identityUserIds NVARCHAR;
SELECT @identityUserIds = (SELECT TOP (1) [userIdsCsv] FROM [identityUsers])
SELECT *
FROM [Users]
-- IF (!ISNULL(@identityUserIds) OR @identityUserIds != '')
WHERE [ID] in (@identityUserIds)
-- ELSE (no extra condition)
我该怎么做?
答案 0 :(得分:1)
执行此操作的常用方法是:
... where @identityUserIds is null or ID in (@identityUserIds)
答案 1 :(得分:0)
我认为这可以通过RecyclerView
:
OR
但请注意@ Rhumborl的评论是正确的,SELECT *
FROM [Users]
WHERE Len(ISNULL(@identityUserIds,''))=0
OR [ID] IN (@identityUserIds)
语句不适用于字符串。不幸的是,我没有那个问题的直接解决方案。
答案 2 :(得分:0)
...其中ID为(ISNULL(@ identityUserIds,ID))