我已经做了相当多的SQL,所以我认为这不可行。但它似乎应该是。
假设我有一个如下所示的脚本:
DECLARE @first INT
SELECT @first = 1
RAISERROR ('First Done: %d', 0, 1, @first) WITH NOWAIT
DECLARE @second INT
SELECT @second = 2
RAISERROR ('Second Done: %d', 0, 1, @second) WITH NOWAIT
DECLARE @third INT
SELECT @third = 3
RAISERROR ('Third Done: %d' , 0, 1, @third) WITH NOWAIT
我的结果总是:
First Done: 1
Second Done: 2
Third Done: 3
我想知道的是,是否有办法告诉sql server并行运行每个部分?
像Parallel.ForEach
之类的东西(使用C#方法)。
所以,如果第二部分需要更长时间,我的结果将是:
First Done: 1
Third Done: 3
Second Done: 2
在我的实例中,我有很多语句(在同一个查询中),它们都是相互独立运行的。我希望有一种方法可以让它们同时运行并缩短查询运行的总时间。