1

SQLServer で select ステートメントからリストを作成し、この select ステートメントの結果を使用して select のセットを作成したいと思います。たとえば、最初の選択から返される値が 3 つある場合は、次のようにします。 3 回実行される While ループを実行し、各反復で値を選択します。

これが私がやろうとしていることの例です:

selectステートメントがあります:

Select ID
From T_1
Where T_1.somefield=1

返されるステートメントは次のようになります。

|1|
|2|
|4|

while 3 は、私の Where 条件のために表示されません。

これを行って結果を繰り返したい

set @myCount=select count(id) from -my result-
set @indexFlag=0;

while (@indexFlag<@myCount)
Begin


Select *
From T_2
Where T_2.field=...(1 - 1st loop, 2- 2nd loop, 4- 3rd loop)


@indexFlag=@indexFlag+1

終わり

実装方法がわかりません.SQLSERVERはある種のリストをサポートしていますか? どんな助けでも感謝します。

4

1 に答える 1

0

これには結合を使用する必要があると思います。

select t_2.* from t_1 left join t_2 
on t_1.ID = t_2.ID
where t_1.some_field = 1

これにより、1 つのテーブル自体に必要なすべての行が返されます。次に、コードでこのテーブルを処理して、必要な行をフィルター処理します。

于 2013-02-17T11:55:56.827 に答える