Sql server 2008 如果参数值=”如何忽略条件;“全部”;

Sql server 2008 如果参数值=”如何忽略条件;“全部”;,sql-server-2008,Sql Server 2008,我找到了这个链接 我需要 当参数值为ALL时,忽略上述参数/条件。 如何做到这一点 下面的信息,任务:如果参数=ALL,则应该忽略而不是null Declare @psqluid varchar(15) = 'admin' Declare @psqlstartdate datetime = '06/01/2010' Declare @psqlenddate datetime = '06/28/2012' Declare @psqlcompany varchar(45) Declare @psq

我找到了这个链接

我需要

当参数值为ALL时,忽略上述参数/条件。

如何做到这一点

下面的信息,任务:如果参数=ALL,则应该忽略而不是null

Declare @psqluid varchar(15) = 'admin'
Declare @psqlstartdate datetime = '06/01/2010'
Declare @psqlenddate datetime = '06/28/2012'
Declare @psqlcompany varchar(45)
Declare @psqlapplication varchar(10) = 'APP2'
Declare @psqlprogram varchar(10)= 'PROG1'
SELECT * FROM [TMSFINAL].[dbo].[TMTMS] 
WHERE (@psqluid IS NULL  OR [TMSFINAL].[dbo].[TMTMS].[tmsUserID]=@psqluid) 
AND [TMSFINAL].[dbo].[TMTMS].[tmsDate] >= @psqlstartdate 
AND [TMSFINAL].[dbo].[TMTMS].[tmsDate] <= @psqlenddate 
AND (@psqlcompany IS NULL OR [TMSFINAL].[dbo].[TMTMS].[tmsCompany] = @psqlcompany) 
AND [TMSFINAL].[dbo].[TMTMS].[tmsApplication] = @psqlapplication 
AND [TMSFINAL].[dbo].[TMTMS].[tmsProgram] = @psqlprogram
Declare@psqluid varchar(15)='admin'
声明@psqlstartdate datetime='06/01/2010'
声明@psqlenddate datetime='06/28/2012'
声明@psqlcompany varchar(45)
声明@psqlapplication varchar(10)='APP2'
声明@psqlprogram varchar(10)='PROG1'
从[TMSFINAL].[dbo].[TMTMS]中选择*
其中(@psqluid为NULL或[TMSFINAL].[dbo].[tmtmtms].[tmsUserID]=@psqluid)
和[TMSFINAL].[dbo].[TMTMS].[tmsDate]>=@psqlstartdate
和[TMSFINAL].[dbo].[TMTMS].[tmsDate]
这不是工作吗

增加:

WHERE @psqluid = "ALL" OR [TMSFINAL].[dbo].[TMTMS].[tmsUserID]=@psqluid ...

这可能有效,我想要一个解决方案,它不需要连接字符串,如忽略NULL参数链接所示。诸如此类的事情吗?我想我需要更多关于您的过程的具体信息,以便能够执行itInfo添加的,如何使用ignore if paramater=“ALL”实现这一点谢谢,只是语法错误,单引号@psqluid='ALL',谢谢
WHERE @psqluid = "ALL" OR [TMSFINAL].[dbo].[TMTMS].[tmsUserID]=@psqluid ...