Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Butuh bantuan dalam permintaan dinamis dengan IN Clause

Jika nama verdor Anda adalah

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

Anda dapat menggunakan SQL dinamis

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

atau Anda dapat membuat fungsi split Anda mengembalikan tabel

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

Yang kedua jauh lebih disukai karena perlindungannya dari serangan tipe injeksi SQL



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. JSON_QUERY() vs JSON_VALUE() di SQL Server:Apa Bedanya?

  2. Bagaimana cara menghubungkan Sqlcmd ke server?

  3. Konversikan tanggal berformat ISO ke DATETIME

  4. SQL Server mengembalikan kesalahan Login gagal untuk pengguna 'NT AUTHORITY\ANONYMOUS LOGON'. di aplikasi Windows

  5. Akses ditolak untuk xp_cmdshell yang diaktifkan untuk pengguna admin