【问题标题】:SQL count huge amount of dataSQL统计海量数据
【发布时间】:2012-09-07 22:41:55
【问题描述】:

我的 MySQL 数据库有超过 100 万条记录,并且还在不断增长。我在那里有一个价值“援助”,有时可以多次使用。我要算援助。

我试过了

SELECT COUNT ( DISTINCT (value) ) AS somevalue
FROM table

这很有效,但现在值太多了,它需要比 max_exec_time 更长的时间。我也用 GROUP BY 尝试了同样的方法,但没有成功。

有什么方法可以快速运行这个查询?或者还有其他解决方案吗?

【问题讨论】:

    标签: php sql time database-performance


    【解决方案1】:

    让价值成为指数!计算索引比处理表中的记录要快得多。

    【讨论】:

    • 我想要“价值”的不同计数。我不想知道有多少条目。你有我的 SQL 查询来管理它吗?
    • 您的值很好,只需添加索引:ALTER TABLE `table` ADD INDEX ( `value` )
    【解决方案2】:

    只需为每一行分配一个 ID(ID、uto_increment),然后取最后一个分配的 ID。

    【讨论】:

      猜你喜欢
      • 2011-11-17
      • 2012-01-10
      • 2010-10-07
      • 1970-01-01
      • 2021-10-01
      • 2019-05-19
      • 2013-11-26
      • 2013-02-16
      • 2021-12-20
      相关资源
      最近更新 更多