从MYSQL中删除超过X天的数据,Unix时间以毫秒为单位
我想从数据库中的特定表中删除时间戳早于180天的所有行 我已经尝试了以下方法:从MYSQL中删除超过X天的数据,Unix时间以毫秒为单位,mysql,sql,time,unix-timestamp,Mysql,Sql,Time,Unix Timestamp,我想从数据库中的特定表中删除时间戳早于180天的所有行 我已经尝试了以下方法: DELETE FROM on_search WHERE time < UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 30 DAY)); 但是时间是13位数的unix格式,比如1543821263977 UNIX_TIMESTAMP(NOW()) 以秒为单位返回时间 你必须将它乘以1000,以使它在毫秒内达到13位时间 DELETE FROM on_search WHER
DELETE FROM on_search
WHERE time < UNIX_TIMESTAMP(DATE_SUB(NOW(), INTERVAL 30 DAY));
但是时间是13位数的unix格式,比如1543821263977
UNIX_TIMESTAMP(NOW())
以秒为单位返回时间
你必须将它乘以1000,以使它在毫秒内达到13位时间
DELETE FROM on_search
WHERE time < UNIX_TIMESTAMP(DATE_SUB(NOW(3), INTERVAL 30 DAY))*1000;
将其乘以1000,您将有时间(以毫秒为单位),从时间列开始,其中时间