sql >> データベース >  >> RDS >> Sqlserver

IN 句を使用した動的クエリでヘルプが必要

    あなたの名前が

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

    動的 SQL を使用できます

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

    または、分割関数がテーブルを返すようにすることもできます

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

    2 番目は、SQL インジェクション タイプの攻撃から保護されるため、はるかに望ましい



    1. Oracleデータベースにログインする方法は?

    2. 各グループの上位3つの値を選択します

    3. GlassfishはJDBCリソースを作成しません

    4. MySqlはエラーなしでバイナリデータをdbに挿入します