Общий метод:
- Загрузка данных каждого дня в отдельную таблицу
- Использование
CREATE VIEW
для создания комбинированного представления прошлой недели таблицы
Например:
CREATE VIEW data
AS
SELECT * FROM monday_table
UNION ALL
SELECT * FROM tuesday_table
UNION ALL
SELECT * FROM wednesday_table
...etc
Ваши пользователи могут просто использовать представление как обычную таблицу.
- Затем каждый день, когда появляются новые данные
DROP
или TRUNCATE
самая старая таблица и загрузка новых данных - Либо загрузите новые данные в таблицу с тем же именем, что и отброшенные / усеченные, либо заново создайте представление для включения эта новая, а не удаленная таблица
Нет автоматизированного процесса c, который бы выполнял описанные выше шаги, но вы могли бы сделать его частью сценария, выполняющего процесс загрузки .