mysql 随机取一条记载优化ITeye - 凯时娱乐

mysql 随机取一条记载优化ITeye

2019年02月27日10时59分12秒 | 作者: 水风 | 标签: 优化,结构,索引 | 浏览: 2448

结构:CREATE TABLE test_rand(id int(11) AUTO_INCREMENT PRIMARY KEY,c2 varchar(30) DEFAULT NULL, c3 date DEFAULT NULL);

 

刺进800W条记载;

 

随机取一条记载:(id已树立索引)

SELECT * FROM test_rand order by rand() limit 1;

mysql select * from test_rand order by rand() limit 1;

+-+++

| id      | c2                 | c3         |

+-+++

| 1399866 | testing partitions | 1996-10-21 |

+-+++

1 row in set (19.13 sec)

 

第一次优化

SELECT FLOOR(MAX(id)*RAND()) FROM test_rand

+-+

| FLOOR(MAX(id)*RAND()) |

+-+

|                446373 |

+-+

1 row in set (2.20 sec)

再次优化:
版权声明
本文来源于网络,版权归原作者所有,其内容与观点不代表凯时娱乐立场。转载文章仅为传播更有价值的信息,如采编人员采编有误或者版权原因,请与我们联系,我们核实后立即修改或删除。

猜您喜欢的文章