当前位置: 首页 > news >正文

网站建设的原则和目标快手推广网站

网站建设的原则和目标,快手推广网站,2昌平区网站建设,长沙网站建设公司哪家好最近看到一道面试题,如何优化深分页查询 最简单的例子是 select * from web_bill_main limit 30000,10;分页达到30000行,需要把前面29999行都过滤掉,才能找到这10条数据 所以整体时间花了80ms(工具显示时间) 我当时的第一反应是&#xff0…

最近看到一道面试题,如何优化深分页查询
最简单的例子是

select  * from web_bill_main
limit 30000,10;

分页达到30000行,需要把前面29999行都过滤掉,才能找到这10条数据
所以整体时间花了80ms(工具显示时间)

我当时的第一反应是,使用in

select * from web_bill_main 
where id in 
(select id from web_bill_main limit 30000,10)

很遗憾,报错了
在这里插入图片描述

然后想到使用left join

select w.* from
(select id from web_bill_main 
limit 30000,10)t left join web_bill_main w on t.id = w.id

速度提升至15ms

正当我洋洋得意时,发现问题的不对劲,速度是提升了,但是返回数据不一样

此时我发现,以下两个sql返回数据的id不一致

select id from web_bill_main
select  * from web_bill_main

select * from web_bill_main查询到的是根据ID进行排序的数据
select id from web_bill_main查询出来的ID并不有序

百思不得其解,使用explain分析
explain select * from web_bill_main
分析如下,全表查,所以id有序
在这里插入图片描述

explain select id from web_bill_main
分析如下,没有使用id索引,而是使用了idx_modify_time,mysql除了主键索引,都是联合索引,利用了回表
在这里插入图片描述
针对使用idx_modify_time的理解是,id是聚簇索引,如果遍历ID索引的结果就是,会遍历所有数据,所以使用idx_modify_time索引的覆盖索引机制,而idx_modify_time的顺序和id不一致,所以出现查询到的结果不一

最终,改成如下sql,数据与原数据一致

select w.* from
(select id from web_bill_main 
order by id 
limit 30000,10)t left join web_bill_main w on t.id = w.id

耗时29ms
在这里插入图片描述

http://www.tj-hxxt.cn/news/100913.html

相关文章:

  • 义乌网站建设温州seo网站推广
  • 做名片哪个网站可以找网络营销广告案例
  • 微信公众号可以做几个微网站吗谷歌代运营
  • 学校网站报价单网页制作网站制作
  • 网站导航这么做网络推广都有什么方式
  • 金猪云高端网站建设网络新闻发布平台发稿
  • 阿里巴巴国际站入驻费用360优化大师软件
  • 做调查问卷的网站有什么今天头条新闻
  • wordpress上传网站seo管家
  • 周口微网站制作投放广告怎么投放
  • 免费网站建站排行榜网站推广策略有哪些
  • 手机网站建设yuseo批量建站
  • 即买即送的网站有哪些厦门网站外包
  • 做商城网站需要备案吗建网站免费
  • 毕业设计代做淘宝好还是网站好南宁网站推广公司
  • 成品网站和模板建站百度推广的价格表
  • 医院网站建设技术方案ppt爱网站关键词查询工具
  • 网站的网站搭建找营销推广团队
  • 网站模板 酒类郑州粒米seo外包
  • 有哪些网站是做视频的成都全网营销推广
  • 网页设计与网站建设ppt怎么线上推广自己的产品
  • 杭州有哪些网站建设惠州百度seo
  • 个人博客网站的建设结构图网站是否含有seo收录功能
  • 网站建设可以资本化吗seo优化顾问服务
  • 网站建设 语言易观数据
  • wordpress是建站最快的网店
  • 企业所得税税收筹划南宁seo费用服务
  • 上海高端网站建设高端网站建设手机如何创建网站
  • 做公司网站好处plc培训机构哪家最好
  • 网站在阿里云备案软文如何推广