Перенос записей из таблицы в таблицу MySQL?

Есть необходимость часть данных постоянно переносить из рабочей таблицы в архивную с удалением из рабочей. Понятно что можно запрос написать на SELECT потом на INSERT где указать кучу полей, потом DELETE из первой таблицы, а нельзя ли это как-то средствами MySQL сделать? Репликацию не предлагать, тут не нужна точная копия.
  • Вопрос задан
  • 747 просмотров
Решения вопроса 4
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
INSERT INTO `table1` (`field1`, `field2`, ...) SELECT `field1`, `field2`, ... FROM `table2` WHERE ...;
DELETE FROM `table2` WHERE ...;
Ответ написан
jalpy
@jalpy
sdfdfg
INSERT INTO Customers (CustomerName, Country)
SELECT SupplierName, Country FROM Suppliers;
Ответ написан
Комментировать
qonand
@qonand
Software Engineer
в зависимости от цели, можно сделать либо двумя запросами:
INSERT INTRO arhive_table (field1, field2) SELECT field1, field2 FROM table WHERE <тут условие>;
DELETE FROM table WHERE <тут условие>;
либо реализовать партицирование (этот способ будет оптимальнее) https://habrahabr.ru/post/66151/
Ответ написан
petermzg
@petermzg
Самый лучший программист
Средствами mysql этого не сделать
Тут только cron или Task Scheduler (зависит от вашей ОС)
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы