Mysql查询需要很长时间

时间:2012-06-01 09:56:43

标签: mysql optimization

我的表tbltemp有大约9万卢比的记录。列为:id(主键,自动增量),nameqtypricestatusmod_date,{{1} }。

我的查询是:

created_date

执行大约需要7到10秒。如何优化我的表格或查询?

3 个答案:

答案 0 :(得分:0)

您应该在qty列上创建广告索引 无论如何ORDER By Rand()是耗时的......

答案 1 :(得分:0)

以下是order by rand()的替代方案。尝试一次,看看它是否有效

select @lims := floor(1+rand()*(count(*) - 1)) from tbltemp;  

PREPARE mystatement FROM "SELECT * FROM tbltemp WHERE qty > 3 LIMIT ?, 50";

EXECUTE mystatement USING @lims;

答案 2 :(得分:0)

在您的查询中:

SELECT * FROM tbltemp WHERE qty > 3 ORDER By Rand() LIMIT 50

对于查询优化,请看一下:

  1. ORDER BY子句是花费很长时间的主要原因。
  2. 将索引添加到qty列。
  3. 您使用的存储引擎也会影响性能 查询优化.MYISAM是最快的存储引擎。