MSSQLのTopとMAX効率テスト
2853 ワード
環境:
MSSQL 2008は、キャッシュが使用されていない場合に実行されます.
表には8 W本の記録がある
分類1には134件の記録がある
それぞれ3つの文をテストしました
A文はすぐに0秒近く
B文は8秒近くかかります
C文はBと同じように8秒かかります
TOPとMAXの効率は低いようですね
それから最大値を求めて書き方を変えました
スピードはAの書き方と同じです
テストを続けたばかりです
Top 100に変更して、Top 200はスピードが速いです
Top 1に変更すると、Top 10は速度が遅く、MSが分からない.
転載先:https://www.cnblogs.com/DKSoft/p/3415345.html
MSSQL 2008は、キャッシュが使用されていない場合に実行されます.
表には8 W本の記録がある
分類1には134件の記録がある
それぞれ3つの文をテストしました
-- A
select
1
from 1
WHERE Ftype=' 1'
ORDER BY 1
-- B
select
Top 1 1
from 1
WHERE Ftype=' 1'
Order by 1 desc
-- C
select
MAX( 1)
from 1
WHERE Ftype=' 1'
A文はすぐに0秒近く
B文は8秒近くかかります
C文はBと同じように8秒かかります
TOPとMAXの効率は低いようですね
それから最大値を求めて書き方を変えました
declare @var01
select
@var01 = 1
from 1
WHERE Ftype=' 1'
ORDER BY 1 ASC
select @var01
スピードはAの書き方と同じです
テストを続けたばかりです
Top 100に変更して、Top 200はスピードが速いです
Top 1に変更すると、Top 10は速度が遅く、MSが分からない.
転載先:https://www.cnblogs.com/DKSoft/p/3415345.html