2011-12-14 20 views
0

は2008年- SQL Serverの2008

は、私はいくつかのIDを保持するテーブル変数を持っていると私はベースのいくつかのより多くのタスクに持っているSQL Serverで何かをforeachの価値を行う方法はあります値について次のように

テーブルvairableは次のとおりです。

declare @InspectionIDTable table(InspectionID uniqueidentifier not null) 

私はループに必要といくつかのSELECT文を実行し、この表の値に基づきます。結果に基づいて、私は他のテーブル変数を設定し、さらに処理しなければなりません。

基本的には、foreachをネストすることができるSQL Serverでforeachが必要です。これを行うためのきれいなapporachはありますか?

また、プログラミングの観点から、ストアドプロシージャでこれを行うのがよい方法かどうかを知りたいと思います。

答えて

2

あなたは

が行を行う方法がある彼らのパフォーマンスが悪いので、カーソルを使用することは避けるべきストアドプロシージャを記述し、とにかく

http://sqlserverplanet.com/tsql/sql-server-for-each-row-next/

を「結果セット」にカーソルを開くことができますカーソル

なし-by-行の操作は以下を見てください:

http://www.sql-server-performance.com/2004/operations-no-cursors/

+0

は間違いなくそれらを見ていきます。私はサブクエリと 'IN'句を使ってselectクエリを使って仕事を終えました。 :) –

+0

http://wiki.lessthandot.com/index.php/Cursors_and_How_to_Avoid_Them – HLGEM