Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Besoin d'aide dans une requête dynamique avec la clause IN

Si votre nom verdor est

 declare @in varchar(100)
 select @in = 'HP,LENOVO'

Vous pouvez utiliser SQL dynamique

 declare @sql nvarchar(1000)
 select @sql = 'select * from yourtable where yourfield in ('[email protected] +')'
 exec sp_executesql @sql

ou vous pouvez faire en sorte que votre fonction split renvoie une table

 select * 
 from yourtable
     inner join dbo.f_Split(@in) f 
     on yourtable.yourfield =f.entry

La seconde est largement préférable en raison de sa protection contre les attaques de type injection SQL