Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 我不知道你的真实情况。您希望保留多少个月?该表将保留过去4个月的数据。cron将在每个月底运行此查询。当然,我不知道在一个月结束时,表中会有多少记录,200万?300万?好的,那么您将每月删除一次,数据库中存在的总共5个月中的1个月。在这种情况下,索引会很_Mysql_Sql - Fatal编程技术网

Mysql 我不知道你的真实情况。您希望保留多少个月?该表将保留过去4个月的数据。cron将在每个月底运行此查询。当然,我不知道在一个月结束时,表中会有多少记录,200万?300万?好的,那么您将每月删除一次,数据库中存在的总共5个月中的1个月。在这种情况下,索引会很

Mysql 我不知道你的真实情况。您希望保留多少个月?该表将保留过去4个月的数据。cron将在每个月底运行此查询。当然,我不知道在一个月结束时,表中会有多少记录,200万?300万?好的,那么您将每月删除一次,数据库中存在的总共5个月中的1个月。在这种情况下,索引会很,mysql,sql,Mysql,Sql,我不知道你的真实情况。您希望保留多少个月?该表将保留过去4个月的数据。cron将在每个月底运行此查询。当然,我不知道在一个月结束时,表中会有多少记录,200万?300万?好的,那么您将每月删除一次,数据库中存在的总共5个月中的1个月。在这种情况下,索引会很有用。检查这个链接,我相信它会给你一些想法:我添加索引的原因是因为这个查询将每月执行一次。你是说索引是不必要的吗?。(我不是在评判你,我只是好奇)这要看情况而定。在目前的情况下,不是这样。(甚至会使性能恶化)。但对于你的实际情况,我不知道。您希


我不知道你的真实情况。您希望保留多少个月?该表将保留过去4个月的数据。cron将在每个月底运行此查询。当然,我不知道在一个月结束时,表中会有多少记录,200万?300万?好的,那么您将每月删除一次,数据库中存在的总共5个月中的1个月。在这种情况下,索引会很有用。检查这个链接,我相信它会给你一些想法:我添加索引的原因是因为这个查询将每月执行一次。你是说索引是不必要的吗?。(我不是在评判你,我只是好奇)这要看情况而定。在目前的情况下,不是这样。(甚至会使性能恶化)。但对于你的实际情况,我不知道。您希望保留多少个月?该表将保留过去4个月的数据。cron将在每个月底运行此查询。当然,我不知道在一个月结束时,表中会有多少记录,200万?300万?好的,那么您将每月删除一次,数据库中存在的总共5个月中的1个月。在这种情况下,索引将非常有用。请检查此链接,我相信它将为您提供一些想法:
mysql> create index idx_logs_log_date ON logs (log_date);
Query OK, 0 rows affected (9.00 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> EXPLAIN SELECT * from logs where log_date < "2013-09-11";
| id | select_type | table | type | possible_keys     | key  | key_len | ref  | row |Extra

+----+-------------+-------+------+-------------------+------+---------+------+-----+-----

|  1 | SIMPLE      | logs  | ALL  | idx_logs_log_date | NULL | NULL    | NULL | 1420480 | Using where |


1 row in set (0.00 sec)



mysql> delete from logs where log_date < "2013-09-11";

Query OK, 1163008 rows affected (14 min 20.87 sec)
mysql> SELECT COUNT(id) FROM logs WHERE log_date < "2013-09-14";
+-----------+
| COUNT(id) |
+-----------+
|   1182688 |
+-----------+
1 row in set (0.58 sec)
DROP INDEX `idx_logs_log_date` ON logs;
delete from logs where log_date < "2013-09-11";
create index idx_logs_log_date ON logs (log_date);