考虑日期时间为十进制(16,4),从表中删除N行

时间:2019-07-08 09:57:03

标签: mysql datetime

我有一个由CFDB插件在wordpress安装中创建的MySQL表。随着规模的巨大增长,我需要删除较旧的条目(例如,我只需要保留一年的数据)。数据以索引“ submit_time”保存,该索引的数据类型为十进制(16,4)。我将如何使用SQL查询实现这一目标。

结构类似于https://pasteboard.co/In0JWMU.png

设置名称utf8; SET time_zone ='+00:00';

DROP TABLE IF EXISTS wp_cf7dbplugin_submits ; CREATE TABLE wp_cf7dbplugin_submits ( submit_time decimal(16,4) NOT NULL, form_name varchar(127) DEFAULT NULL, field_name varchar(127) DEFAULT NULL, field_value longtext, field_order int(11) DEFAULT NULL, 文件longblob, KEY submit_time_idx ( submit_time ), KEY form_name_idx ( form_name ), KEY field_name_idx ( field_name ) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

1 个答案:

答案 0 :(得分:0)

使用FROM_UNIXTIME通过以下查询使它起作用。

DELETE FROM wp_cf7dbplugin_submits WHERE FROM_UNIXTIME(submit_time) < '2019-01-01 00:00:00'