【问题标题】:Mysql - Aggregate function is very slowMysql - 聚合函数很慢
【发布时间】:2011-05-05 20:20:37
【问题描述】:

我有一个带有非常大表的 mysql 数据库。我经常运行涉及聚合函数的查询。使用 MIN、MAX、SUM、COUNT 等聚合函数的查询运行速度非常慢。请帮我提高速度。

SELECT MIN(PeriodTime) FROM ResultsTable WHERE (OrderId=271)
SELECT COUNT(*) FROM ResultsTable WHERE (OrderId=271);  ==> returns 258021

该表中的总行数 = 1213284,我的查询匹配数 = 258021 行。

感谢您的帮助。谢谢。

【问题讨论】:

    标签: mysql sql aggregate-functions


    【解决方案1】:

    ResultsTable 上创建一个涵盖PeriodTimeOrderId 的索引。这会有很大帮助。

    【讨论】:

    • 感谢您的信息。我如何在 VIEWS 上做类似的事情。
    • MySQL 不支持视图索引。然而,视图在执行时会使用索引。
    • 当我想对视图运行类似查询时,您知道其他替代方法吗?谢谢。
    • 不使用视图。真的,如果查询运行得很快,视图也应该。我倾向于不使用太多视图,并且我更喜欢在我的大部分工作中使用存储过程。然而,视图在那里,但适当的索引也将在那里工作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-17
    • 2017-03-18
    • 2013-02-13
    • 1970-01-01
    • 2018-11-25
    • 2016-04-17
    相关资源
    最近更新 更多