我有这样的语句正在超时:
SELECT COUNT(*) FROM A WHERE A.value1 IN (
SELECT A.value1 FROM A WHERE A.value2 = 0
)
表A中有13,000,000+行,由于某些原因,我不能使用索引。
那么如何在不使用索引的情况下加快速度?我正在使用MySQL 5.6。
请帮忙。
答案 0 :(得分:2)
我将首先尝试使用 var svg = this.getSVG();
var base_image = new Image();
var Isvg = "data:image/svg+xml," + svg;
base_image.src = Isvg;
。通常可以更好地优化:
exists
为此的最佳索引是SELECT COUNT(*)
FROM A
WHERE EXISTS (SELECT 1
FROM A A2
WHERE A2.value2 = 0 AND A2.value1 = A.value1
);
。
您还可以使用两种聚合级别:
A(value2, value1)