sql >> Database teknologi >  >> RDS >> Sqlserver

Sådan bruges Pass kommasepareret streng i dynamisk forespørgsel i SQL

Når du bygger sådan en dynamisk SQL, skal du pakke din parameter ind i dobbelte anførselstegn ''

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)

På denne måde bliver SQL-sætningen:

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

og ikke:

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


  1. Hvorfor forbinder du ikke Android til databasen direkte?

  2. Sådan indsætter du en klat i en database ved hjælp af sql server management studio

  3. Hvorfor intet output, når PLSQL Anonymous-blok er fuldført?

  4. Parse xmltype i tabel efter pivot xml