2016-09-14 34 views
1

私はいくつかの独立したselect文を実行する必要があるsprocに取り組んでいます。だから私はこのような3つの選択ステートメントがあるとしましょう:はSQLサーバにasync sqlクエリを書く方法です

select * from x into #x 
select * from y into #y 
select * from z into #z 

それぞれの選択ステートメントが完了するまで2つかかるとしましょう。上記のようにsprocを実行すると、合計クエリ時間は6秒になります。しかし、私は非同期/同時クエリを実行することができた場合、私は合計2秒でsprocをexecすることができます。 T-SQLでこのような何かを行う方法?:トランザクションデータベースシステムとして

select * from x into #x async 
select * from y into #y async 
select * from z into #z async 
+0

を実行できるように

はコードの下

​​

インスタンス化し、これらのジョブやスケジュールの両方を参照してください。コンセプトですが、いいえ、方法はありません。 –

+0

いいえ、SSMSを使用している場合は同じウィンドウではありません。クエリごとに1つのウィンドウを開く必要があり、各ウィンドウは他のセッションとは独立して実行できる異なるセッションを表します。クエリーは通常、WebサイトやコンソールアプリケーションのようなSSMS以外のプロセスから実行されるため、これらのアプリケーションは複数の接続を開き、並行して(同時に)クエリを実行することができるため、通常問題はありません。そのようなものとして、このような機能に対する要求は実際にはありません。 – Igor

+2

この質問は、あなた自身のhttp://stackoverflow.com/questions/4571823/sql-server-tsql-is-it-possible-to-exec-statements-in-parallelと密接に関連しています – JsonStatham

答えて

0

があり、SQL Serverが非同期操作を実行するという概念を持っていません。このようなことが必要な場合は、アプリケーション層でそのロジックを実行する必要があります。

0

それがこの問題を回避する方法ですが、あなたは複数のジョブを作成することにより、非同期で実行することができ、それが面白いことを非同期

関連する問題