0

ストアド プロシージャを作成していますが、何らかの変数に複数の値を含める必要があります。テーブル変数を使用してみましたが、それは探しているものではありません。これは、選択クエリから複数の値をチェックし、これらの値に対して if ステートメントを使用する必要があるためです。

変数が必要なコードは次のとおりです。

If @SplitVal = 1
Begin
    Insert into SpecDetailsExt (SrecId, SplitVal, Acknowledged,Required, [Drawings Produced]) 
    Select DISTINCT SpecDetails.SrecId, '1', @MoveToOrder, @RequiredDate, @Drawings
    FROM   SpecDetails INNER JOIN Products ON SpecDetails.ProductRef = Products.CDF_Code_Tx 
    WHERE (SpecDetails.QuoteNo = @Qno) 
End
ELSE
Begin
    Insert into SpecDetailsExt (SrecId, SplitVal, Acknowledged, Required, [Drawings Produced])
    Select DISTINCT SpecDetails.SrecId, '1', @MoveToOrder, @RequiredDate, @Drawings 
    FROM   SpecDetails INNER JOIN Products ON SpecDetails.ProductRef = Products.CDF_Code_Tx 
    WHERE (SpecDetails.QuoteNo = @Qno)

    Insert into SpecDetailsExt (SrecId, SplitVal, Acknowledged, Required, [Drawings Produced]) 
    Select DISTINCT SpecDetails.SrecId, '2', @MoveToOrder, @RequiredDate, @Drawings
FROM   SpecDetails 
          INNER JOIN Products ON SpecDetails.ProductRef = Products.CDF_Code_Tx 
    WHERE (SpecDetails.QuoteNo = @Qno) 
End
4

1 に答える 1

1

文字列を ? として渡します。分割リストを作成し、それを分割するための UDF を作成します。または、UDF が必要ない場合は、コード内で分割してください。

于 2013-10-15T15:22:50.750 に答える