SQL COUNTパフォーマンス質問
-
20-09-2019 - |
質問
例のテーブルの構造:
Id, Integer (PK)
Name, Varchar(100)
Description, Text
私は性能差が存在するかどうかを知る必要があります:
SELECT COUNT(*) FROM Example;
と
SELECT COUNT(Id) FROM Example;
それとも違いが存在するしないのですか?
解決
の違いは、両方のパフォーマンスに存在し、実際の結果セット
COUNTのSQL関数でのパフォーマンス
他のヒント
実行計画を確認します。結果は表からまたはメタデータから来るん(例えばINFORMATION_SCHEMA)の違いは非常に最小限である可能性が高い?:
。私は差があると信じています。あなたのテーブルのサイズに応じて、それは無視できるかもしれない、またはそれは大きな可能性があります。
これはおそらく、最も遅いです:SELECT COUNT(*)FROM例
これは真ん中にある:例
FROM SELECT COUNT(同上)
これが最速のようになります。SELECT COUNT(1)の例の
読む価値が、残念ながらロシアインチ
ショートストーリーはCOUNT(*)
がdm_db_partition_stats
に直接アクセスほど効率的ではないということです。
所属していません StackOverflow