当前位置:   article > 正文

MySQL索引-索引测试_mysql索引测试

mysql索引测试
  1. 通过存储过程往数据库中插入300W条数据。
  2. 分别测试使用索引和没有使用索引的情况下,where查询的一个效率对比。
  1. -- 建表
  2. DROP TABLE IF EXISTS person;
  3. CREATE TABLE person (
  4. PID int(11) AUTO_INCREMENT COMMENT '编号',
  5. PNAME varchar(50) COMMENT '姓名',
  6. PSEX varchar(10) COMMENT '性别',
  7. PAGE int(11) COMMENT '年龄',
  8. SAL decimal(7, 2) COMMENT '工资',
  9. PRIMARY KEY (PID)
  10. );
  11. -- 创建存储过程
  12. create procedure insert_person(in max_num int(10))
  13. begin
  14. declare i int default 0;
  15. set autocommit = 0;
  16. repeat
  17. set i = i +1;
  18. insert into person (PID,PNAME,PSEX,PAGE,SAL) values (i,concat('test',floor(rand()*10000000)),IF(RAND()>0.5,'男','女'),FLOOR((RAND()*100)+10),FLOOR((RAND()*19000)+1000));
  19. until i = max_num
  20. end repeat;
  21. commit;
  22. end;
  23. -- 调用存储过程
  24. call insert_person(30000000);
  25. -- 不使用索引,根据pName进行查询
  26. select * from person where PNAME = "test1209325"; #10.813S
  27. -- 给PNAME建立索引
  28. alter table person add index idx_pname(PNAME);
  29. select * from person where PNAME = "test1209325"; # 0.032S
  30. select * from person where PID = 2800000; #0.021

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/439434
推荐阅读
相关标签
  

闽ICP备14008679号