下面是查询:(Dbfiddle:https://dbfiddle.uk/?rdbms=mysql_8.0&fiddle=e7a99f08ecd217cbeb09fe6676cfe645) with Y as (
with recursive D (n, day) as (一旦检索到这些记录,它就会在表中检查状态包含的变量,并执行sum(case when else 0)以获得总计数。我认为查询慢的一个原因是因为它必须计算查询本身的状态和,所以在p
LEFT(name,14) AS chat_id FROM rules WHERE name LIKE '-%-credit' AND value< 1522744396) AS iner)表规则最多有100K行,内部查询返回大约2K行。内部查询的结果是一列,如下所示: chat_id -1001167043635 -1001167043643 ...当我单独运行内部查询时,大约需要0.007秒。
但是当数据库已经有大约30000条记录时,上传速度非常慢。上传20,000份记录需要大约11个小时。我只是通过fgetcsv方法读取一个CSV文件。//other wise insert a new record.下面是运行的查询。查询2,耗时0.4701秒,这意味着30000条记录将花费14103秒,约235分。大约6小时。ENGINE=MyISAM AUTO_INCREMENT=86866 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode