Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Các cách di chuyển dữ liệu cũ hơn 'Y' ngày vào bảng lưu trữ / lịch sử trong MySQL là gì?

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. Không thể kết nối với mysql qua servlet

  2. Không thể chuyển đến hàng 0 trên chỉ mục kết quả 13 của MySQL

  3. Nhiều truy vấn Đầu ra thành một bảng

  4. Lỗi Rails-MySQL - hằng số chưa khởi tạo MysqlCompat ::MysqlRes

  5. trung bình chạy trong mysql