#sql-server
#sql-сервер
Вопрос:
Я хочу знать размер данных в таблице за определенный день? Возможно ли это в SQL server.
У меня есть запрос ниже sp_spaceused 'FederationAuditLogs'
, но он дает мне полный размер таблицы за весь период. но я хочу знать, скажем, только на сегодня.
Пожалуйста, направьте меня.
Комментарии:
1. Создайте задание обслуживания, которое вставляет общее значение, которое вы получаете каждый день, затем вы можете запустить запрос, сравнивающий дни, и получить увеличенный / уменьшенный размер за день
2. @Brad: Предположим, что в таблице есть столбец как
TimeOfOccurence
. Могу ли я использовать этот столбец для получения размера? Можем ли мы написать запрос на основе значения этого столбца, установленного на день.3. Данные в таблице не хранятся с метаданными типа «это было написано сегодня, это было удалено сегодня, это было изменено сегодня и т.д.». Если вам нужно отслеживать такие изменения, вам необходимо реализовать методы для их отслеживания; например, то, что предложил @Brad. Тем не менее, вы не сможете определить, что изменило значения, если не используете какую-либо таблицу истории (и это не сообщит вам об изменениях размера). Было бы невозможно выяснить, что в столбце
CustomerName
сегодня было 17 изменений, увеличивающих размер базы данных на 127 кб.
Ответ №1:
Моей единственной идеей было бы создать запрос, который возвращает все строки за этот день, а затем, используя любой язык, получить сумму всех возвращенных значений sizes.