Удалить N строк в таблице, считая дату и время десятичными (16,4) - PullRequest
0 голосов
/ 08 июля 2019

У меня есть таблица MySQL, которая создается плагином CFDB в установке WordPress.Поскольку размер значительно вырос, мне нужно удалить старые записи (скажем, мне нужно хранить данные только за один год).Данные сохраняются с индексом submit_time, который имеет тип данных decimal (16,4).Как бы я достиг этого, используя SQL-запрос.

Структура похожа на https://pasteboard.co/In0JWMU.png

SET NAMES 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, имя-формы varchar(127) DEFAULT NULL, field_name varchar(127) DEFAULT NULL, field_value longtext, file_order int(11) DEFAULT NULL, fieldder* submit_time_idx ( SUBMIT_TIME ), KEY form_name_idx ( FORM_NAME ), KEY field_name_idx ( field_name ) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

1 Ответ

0 голосов
/ 08 июля 2019

Работает по следующему запросу, используя FROM_UNIXTIME.

DELETE FROM wp_cf7dbplugin_submits WHERE FROM_UNIXTIME(submit_time) < '2019-01-01 00:00:00'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...