我使用下面的T-SQL介紹了一種基於在SQL Server中的某些條件的WHERE子句
Declare @sql nvarchar(max);
Declare @var1 int = 10, @var2 int = 10, @var3 int = 10
set @sql = 'select col1, col2, col3
from table
where col1 = ' + @var1
IF (@var2 > 0)
BEGIN
SET @sql += ' AND col2 = ' + CONVERT(NVARCHAR(10), @var2)
END
IF (@var3 > 0)
BEGIN
SET @sql += ' AND col3 = ' + CONVERT(NVARCHAR(10), @var3)
END
它正常工作,形成一個動態的SQL過濾器,但我想用情況下,當轉換這是靜態SQL。
請給出一些建議,以轉換此聲明。
謝謝你這麼多馬蒂亞 – StackUser
不客氣... –