sql >> Database >  >> RDS >> Sqlserver

Door komma's gescheiden tekenreeksen gebruiken in dynamische query's in SQL

Als je zo'n dynamische SQL bouwt, moet je je parameter tussen dubbele aanhalingstekens plaatsen ''

declare @ProductIDs varchar(11)
declare @SQL varchar(max)

set @ProductIDs='1,2,3,4'
declare @query varchar(max)
--set @query= @ProductIDs +','[email protected]

SELECT @SQL = 'SELECT val FROM dbo.[fnDelimitedStringToTable]('''+ @ProductIDs +''' , '','')'

Exec(@SQL)

Op deze manier wordt de SQL-instructie:

SELECT val FROM dbo.[fnDelimitedStringToTable]('1,2,3,4' , '','')

en niet:

SELECT val FROM dbo.[fnDelimitedStringToTable](1,2,3,4 , '','')


  1. Tijdelijke tabellen maken in MySQL Stored Procedure

  2. Null-waarden invoegen bij gebruik van bulkinvoeging

  3. Is er een hash-functie in PostgreSQL?

  4. update met join-instructie mysql?