Sql Server 2008にテーブル「TRANSACTION」があります。このテーブルには、1秒間に約6レコードが挿入されます。(金融取引表なので) ということで、1日で50万件のレコードが挿入されます。 テーブルは毎週分割されます。
このテーブルは、多くの種類の選択 (もちろん NOLOCK を使用)、挿入、更新操作に頻繁に使用されます。
以下のクエリは、同じテーブルに対する他の重要な選択、挿入、更新操作を遅くする可能性があると思いますか? 以下のクエリが長すぎても、このクエリはテーブルをロックしないため、他の選択クエリの速度が低下することはないと思います。しかし、確信が持てないので、あなたに尋ねます。
選択リストの列はテーブルで索引付けされていないことに注意してください。
SET @END_DATE = GETDATE()
SET @START_DATE = DATEADD(HOUR, -24, @END_DATE)
SELECT Column1, Column2, Column3, Column4, COUNT(*) FROM [TRANSACTION] WITH(NOLOCK)
WHERE TRANSACTION_DATE BETWEEN @START_DATE AND @END_DATE
GROUP BY Column1, Column2, Column3, Column4