У меня есть таблица «TRANSACTION» в Sql Server 2008. Примерно 6 записей в 1 секунду вставляются в эту таблицу. (Так как это таблица финансовых транзакций) Итак, за 1 день вставлено 500.000 записей.
Таблица разбивается еженедельно.
Эта таблица интенсивно используется для многих видов операций выбора (с 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