Как узнать размер таблицы за определенный день в SQL Server

#sql-server

#sql-сервер

Вопрос:

Я хочу знать размер данных в таблице за определенный день? Возможно ли это в SQL server.

У меня есть запрос ниже sp_spaceused 'FederationAuditLogs' , но он дает мне полный размер таблицы за весь период. но я хочу знать, скажем, только на сегодня.

Пожалуйста, направьте меня.

Комментарии:

1. Создайте задание обслуживания, которое вставляет общее значение, которое вы получаете каждый день, затем вы можете запустить запрос, сравнивающий дни, и получить увеличенный / уменьшенный размер за день

2. @Brad: Предположим, что в таблице есть столбец как TimeOfOccurence . Могу ли я использовать этот столбец для получения размера? Можем ли мы написать запрос на основе значения этого столбца, установленного на день.

3. Данные в таблице не хранятся с метаданными типа «это было написано сегодня, это было удалено сегодня, это было изменено сегодня и т.д.». Если вам нужно отслеживать такие изменения, вам необходимо реализовать методы для их отслеживания; например, то, что предложил @Brad. Тем не менее, вы не сможете определить, что изменило значения, если не используете какую-либо таблицу истории (и это не сообщит вам об изменениях размера). Было бы невозможно выяснить, что в столбце CustomerName сегодня было 17 изменений, увеличивающих размер базы данных на 127 кб.

Ответ №1:

Моей единственной идеей было бы создать запрос, который возвращает все строки за этот день, а затем, используя любой язык, получить сумму всех возвращенных значений sizes.