0
我能做到這一點,它的工作原理(但想一些更簡單):T-SQL如何在WHERE IN子句中使用變量?
Declare @PropIDs varchar(50)
Set @PropIDs = '1, 2'
IF OBJECT_ID('dbo.TempProp') IS NOT NULL DROP TABLE dbo.TempProp
CREATE TABLE [dbo].[TempProp](
[PropCode] [VarChar](3) NULL)
Set @Sql = 'Insert Into TempProp Select PropertyCode From Property where PropertyID In (' + @PropIDs + ')'
Execute (@Sql)
但我希望我能做到這本:
Declare @PropIDs
Set @PropIDs = '1, 2'
Select PropertyCode
Into #TempProp
From Property where PropertyID IN (@PropIDs)
它是」 ......財產(@PropIDs)「,這給我帶來麻煩。 有什麼建議嗎?
如果您值是在這樣的列表中,那麼你必須使用動態SQL。 – Taryn
我的意思是「... PropertyID IN(@PropIDs)」給我帶來麻煩的部分 –
使用表值參數而不是逗號分隔的字符串。這不是JSON,那些是個人價值觀。 –