今天在逛
MSDN Library 找資料時,意外發現若資料表有設索引的話,
MsSQL會記錄該資料表的資料筆數於 sys.partitions
先前若要取得某資料表的總資料筆數時,使用的指令不外乎
SELECT COUN(*) FROm table
這樣的語句來取得資料表總筆數,現在可以改用下列的語句,效能提速非常的明顯。
// ISNULL(MAX([table].[rows]) ,0) 語句是預防資料表內尚無資料或未建任何的索引
SELECT ISNULL(MAX([table].[rows]) ,0) FROm (
SELECT TOP 1 [rows]
FROm sys.partitions
WHERE object_id = object_id('[資料表名稱]')
) AS [table]
沒有留言:
張貼留言