Обновление таблицы mysql во время сдвига значений

У меня есть таблица, которую я использую для статистических целей.
Ее колумы idи1,2,3,.., 31И.pivot
В этой таблице указано количество просмотров за каждый день за последние 31 день.
1показывает количество просмотров за вчерашний день.
14дает количество просмотров за 14 дней назад .
так далее…
(pivotиспользуется только для расчета количества просмотров)





Я бы использовал задание cron каждый день, чтобы обновить эту таблицу, но как бы я пошел о «смещении» всех значений в сторону ( значение colum 15станет значением colum 16; новое значение для colum 1; удалить значение для colum 31)

Заранее спасибо за любую помощь,

1 ответ

    1. Определите таблицу только с двумя столбцами — «дата» и » представления»
    2. INSERT новая строка в таблице с числом представлений для того дня, когда выполняется задание CRON
    3. Измените запрос приложения, чтобы прочитать эту новую таблицу в пользовательском диапазоне дат, который может быть 31 дней или что — нибудь еще-пожалуйста, посмотрите на эту ссылку, чтобы получить идею:

      MySQL Query-Records между сегодня и последние 30 дней

  1. Не совсем уверен, как pivot используется здесь. Однако я почти уверен, что если вы используете его для хранения суммы представлений, он также может быть вычислен с помощью SUM()или GROUP BYбез необходимости отдельного столбца в таблице
  2. Что касается архивации / удаления данных, ваше ежедневное задание CRON может быть изменено, чтобы включить DELETEзапрос (в качестве последнего шага), который очищает записи старше определенной даты. Опять же, вы можете использовать ссылку выше, чтобы получить» целевую » дату
  3. .

    Я извиняюсь, что это может показаться слишком длинным решением того, о чем вы просили. Тем не менее, я считаю, что этот подход должен помочь вам лучше организовать и поддерживать эту таблицу.