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

Cách tốt nhất để xóa các hàng cũ khỏi MySQL trên cơ sở luân phiên là gì?

Hãy thử tạo Sự kiện sẽ tự động chạy trên cơ sở dữ liệu sau khoảng thời gian bạn muốn.

Đây là một Ví dụ:Nếu bạn muốn xóa các mục nhập đã hơn 30 ngày khỏi một số bảng 'tableName', có mục nhập cột 'datetime'. Sau đó, truy vấn sau chạy hàng ngày sẽ thực hiện hành động dọn dẹp bắt buộc.

CREATE EVENT AutoDeleteOldNotifications
ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 DAY 
ON COMPLETION PRESERVE
DO 
DELETE LOW_PRIORITY FROM databaseName.tableName WHERE datetime < DATE_SUB(NOW(), INTERVAL 30 DAY)

Chúng tôi cần thêm ON COMPLETION PRESERVE để giữ sự kiện sau mỗi lần chạy. Bạn có thể tìm thêm thông tin tại đây: http://www.mysqltutorial .org / mysql-trigger / working-mysql-Schedule-event /



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để khắc phục lỗi MySQL # 1064?

  2. Cách đặt mật khẩu gốc thành null

  3. java.sql.SQLException:Giá trị chuỗi không chính xác:'\ xF0 \ x9F \ x91 \ xBD \ xF0 \ x9F ...'

  4. Cách khắc phục LỖI 1130 (HY000):Máy chủ lưu trữ không được phép kết nối với máy chủ MySQL này

  5. Cách thực hiện xếp hạng theo nhóm trong MySQL