我有一个 MySQL 表,它是由 CFDB 插件在 WordPress 安装中创建的。由于大小已大大增加,我需要删除较旧的条目(例如,我只需要保留一年的数据)。数据使用索引“submit_time”保存,其数据类型为decimal(16,4)。我如何使用 SQL 查询来实现这一点。
结构类似于https://pasteboard.co/In0JWMU.png
设置名称 utf8; 设置时区 = '+00:00';
如果存在则删除表
wp_cf7dbplugin_submits;
创建表
wp_cf7dbplugin_submits(
submit_timedecimal(16,4) NOT NULL,
form_namevarchar(127) 默认为空,
field_namevarchar(127) 默认为 NULL,
field_value长文本,
field_orderint(11) 默认为空,
文件longblob,
KEY
submit_time_idx(
submit_time),
KEY
form_name_idx(
form_name),
KEY
field_name_idx(
field_name)
) ENGINE=InnoDB 默认字符集=utf8;
最佳答案
使用 FROM_UNIXTIME 通过以下查询使其正常工作。
DELETE FROM wp_cf7dbplugin_submits WHERE FROM_UNIXTIME(submit_time) < '2019-01-01 00:00:00'
关于mysql - 考虑日期时间为十进制(16,4),从表中删除 N 行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56932470/