【问题标题】:Select fast 10 rows from 60.000 rows从 60.000 行中选择快速 10 行
【发布时间】:2018-12-25 14:38:12
【问题描述】:

如何使用 PHP 强制执行 SQL 查询,以跳过读取 60.000 行! 我只需要选择前 10 行,这需要生命周期!

SELECT * FROM `tbl_premium_articles` ORDER BY `id_p` DESC LIMIT 10

有什么办法可以让它在一秒内查询?

【问题讨论】:

  • 添加show create table tbl_premium_articles;的输出我几乎可以肯定你没有定义它的索引。

标签: php mysql sql


【解决方案1】:

对于这个查询:

SELECT pa.*
FROM `tbl_premium_articles` pa
ORDER BY pa.id_p DESC
LIMIT 10;

您想要在tbl_premium_articles(id_p) 上建立索引。

【讨论】:

  • 查询 60.000 比显示 10 行仍然需要很长时间!!
  • 上面的答案应该有效,因为 order_by 列上有一个索引,并且应该进行索引扫描与全表扫描,它是否优化了 @Flamur Beqiraj?检查此资源:percona.com/blog/2006/09/01/…
猜你喜欢
  • 2011-05-18
  • 1970-01-01
  • 2016-04-27
  • 2011-07-14
  • 2010-09-17
相关资源
最近更新 更多