Mysql
 sql >> Baza danych >  >> RDS >> Mysql

W jaki sposób można przenieść dane starsze niż „Y” dni do archiwum/tabeli historii w MySQL?

CREATE PROCEDURE prc_clean_tables (Y INT, Z INT)
BEGIN
        BEGIN TRANSACTION;

        DECLARE _now DATETIME;
        SET _now := NOW();

        INSERT
        INTO    b
        SELECT  *
        FROM    a
        WHERE   timestamp < _now - INTERVAL Y DAY;
        FOR UPDATE;

        DELETE
        FROM    a
        WHERE   timestamp < _now - INTERVAL Y DAY;

        DELETE
        FROM    b
        WHERE   timestamp < _now - INTERVAL Z DAY;

        COMMIT;
END


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. CodeIgniter Active Record - grupowe zestawienia OR

  2. Jak przechowywać datę i czas w UTC w bazie danych za pomocą EclipseLink i Joda-Time?

  3. Jak sprawdzić duże litery w MySQL?

  4. Dlaczego kolejność oceny dla wyrażeń zawierających zmienne użytkownika jest niezdefiniowana?

  5. Jak przechowywać tekst arabski w bazie mysql za pomocą Pythona?