需求描述:
使用sql刪除7天以前的數據。
在mysql數據庫中的編寫sql方式如下
1、格式如下:
delete from 表名 where DATE(字段名) <= DATE(DATE_SUB(NOW(),INTERVAL 7 DAY))
解釋:DATE函數可以返回日期。NOW函數可以獲取當前系統時間。INTERVAL在此處是一個關鍵字后面,用於表達時間間隔。如果要刪除3小時之前可以寫成 3” HOUR
2、示例如下:
delete from student where DATE(create_time) <= DATE(DATE_SUB(NOW(),INTERVAL 7 DAY));
3、使用mybatis時,在DAO中使用@delete注解示例如下:
@Mapper
public interface UserDao{
@Delete("delete from student where DATE(create_time) <= DATE(DATE_SUB(NOW(),INTERVAL 7 DAY));")
public void deleteDate();
}