2016-11-17 9 views
1

、明らかに表の行数を取得する一つの方法は、O(1)時間にテーブルから行数を取得できますか? SQL Serverで

SELECT COUNT(*) FROM MyTable 

ですが、私はそれがnが行数であるO(n)時間だと仮定します。そこに格納されている行の数を持つ私はアクセスできるすべてのメタデータはありますか?

+1

私は、スタックオーバーフローの答えがあると確信しているが、これは、あなたが方法を示しています。http:// 。 –

答えて

3

はい、あなたはsys.partitionsを使用することができ、それは正確な数ではないかもしれませんが、それは非常に高速です:

SELECT SUM(rows) 
FROM sys.partitions 
WHERE [object_id] = OBJECT_ID('dbo.MyTable') 
AND index_id IN (0,1); 
関連する問題