我希望获得有关增强SQL
查询效果的帮助。查询非常简单,但执行需要相当长的时间,因此我想了解如何增强查询的一些提示:
SELECT
*
FROM
SOME_DB_TABLE
WHERE
SUBSTRING(TIME, 1, 8)
BETWEEN
"20110101" AND "20111231"
AND
CONDITION_COL = "C"
GROUP BY
TIME
ORDER BY
TIME ASC
答案 0 :(得分:3)
子字符串函数可能会降低查询速度。
下面会有类似的工作吗?
time >= "20110101"
and time < "20120101"
答案 1 :(得分:0)
您应该像这样索引时间列:
CREATE INDEX some_index
ON SOME_DB_TABLE (TIME)
这样可以更快地搜索此列
另外,你真的需要每一列吗?使用SELECT *
是