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

SQL Server Business Intelligence Development Studio で複数値パラメーターを一時テーブルに変換する

    前述のように、さまざまなメソッド 文字列を正しい方法で、または次善の方法で分割 優れた読み物です。関数を作成したら、クエリ パラメータをテーブルではなく文字列として定義する必要があります。

    したがって、クエリは実際には次のようになります。

    DECLARE @pEmails TABLE (EmailAddress varchar(255));
    
    INSERT @pEmails (EmailAddress)
    SELECT  Value
    FROM    dbo.Split(@pEmallString);
      

    次に、データセットのプロパティに移動し、複数値パラメーター @pEmails を渡す代わりに データセットに追加する代わりに、新しい @pEmailString を作成します 、値を式として設定します。これは次のようにする必要があります:

    =Join(Parameters!pEmails.Value, ",")
      

    これにより、複数値パラメーターが単一のコンマ区切り文字列に変わります。それを区切られた文字列に変換する必要があり、それを SQL で分割するだけでよいというのは、かなり逆に思えますが、残念ながら私はより良い方法を知りません。



    1. liquibaseに挿入クエリのチェンジセットを定義する

    2. PHPでmysqlの同じテーブルの2つの行を一致させる方法

    3. MySQL WHERE IN()+ AND、PDOは1行のみを返します

    4. コードイグナイターアクティブレコードとの結合のように使用する