我正在执行一个有限制的表清理,但之前想检查计数。
simple count()查询没有响应。
SELECT COUNT(1) FROM schema.table1 INNER JOIN schema.table2 ON table1.col1 = table2.col2;
该表可能有超过5000万条记录。我知道在这么大的数据集中添加连接的影响。但是,这是清理与其他表不匹配的数据所必需的。
如有任何指导,将不胜感激。或替代方法。
除了添加包含连接条件的索引之外,没有什么可以优化查询:
CREATE INDEX idx1 ON schema.table1 (col1);
CREATE INDEX idx2 ON schema.table2 (col2);
您可以在上述步骤前后运行explain
,以更好地理解MySQL是如何执行查询的。