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

做360手机网站快如何联系百度人工客服

做360手机网站快,如何联系百度人工客服,北京网站建设开发公司,保定网站制作价格大家好,我是程序媛雪儿,今天咱们聊mysql超大分页问题处理。 超大分页问题是什么? 数据量很大的时候,在查询中,越靠后,分页查询效率越低 例如 select * from tb_sku limit 0,10; select * from tb_sku lim…

    大家好,我是程序媛雪儿,今天咱们聊mysql超大分页问题处理。

超大分页问题是什么?

    数据量很大的时候,在查询中,越靠后,分页查询效率越低

例如

select * from tb_sku limit 0,10;
select * from tb_sku limit 9000000,10

    上面这条sql,需要查9000010条数据(9000010条数据需要被完整的扫描一遍),却只取最后10条返回,其他都会丢掉,查询代价太大!

在解决这个问题之前,我们先了解一下,什么是覆盖索引

覆盖索引

覆盖索引是指查询使用了索引,并且需要返回的列在索引中都能够找到

select * from tb_user where id = 1 ##覆盖索引

因为根据id查,所建立的聚簇索引的叶子节点存储着所有数据

select id, name from tb_user where name = 'Arm' ## 覆盖索引

因为根据name建立的二级索引,叶子节点志存着name和id,而查找的内容刚好是name和id

select id,name,gender from tb_user where name = 'Arm' ## 非覆盖索引

因为根据name建立的二级索引里没有gender,需要根据id再到聚簇索引中找gender,换句话说,需要回表查询

优化方案

我们在了解覆盖索引之后,针对

select * from tb_sku limit 9000000,10

这个sql语句,应该怎么优化呢?

思路:通过创建覆盖索引+子查询的形式进行优化

上面那个例子可以把sql改为

select *
from tb_sku t,(select id from tb_sku order by id limit 9000000,10)a
where t.id = a.id;

这种查询方式就可以避免回表查询,因为子查询中采用的是覆盖索引,已经包含了要查找的id,且id有序,因此可以快速跳到第9000000条数据并获取接下来的10个id,然后再根据id获取完整行的数据,这样节省了扫描前9000000条数据的时间,效率大大提升。

         欢迎大家关注我的微信公众号,程序媛雪儿,雪儿会定期在上面发布编程的知识碎片,也有雪儿博客地址,上面有详细系统的笔记,雪儿是全栈,但是公众号目前主要还是发后端的技术,以后可能也会涉及到一些前端的知识,我们下期见,拜拜~

http://www.yidumall.com/news/14389.html

相关文章:

  • 网站产品页面什么时候做门户网站有哪些
  • 新疆知名的网站建设公司整站优化排名
  • 海南省旅游专业网站发展电子商务缺乏强大的专业产业资源做后盾企业管理8大系统
  • 网上建立公司网站seo兼职平台
  • 个人做网站多少钱中国制造网网站类型
  • 美食介绍网站模板郑州seo培训
  • 织梦网站logo怎么换seo优化信
  • 双语版网站案例全网推广哪家正宗可靠
  • 西安做网站排名搜索引擎营销的特征
  • 网站建设主题怎么推广销售
  • 做零食的网站有哪些网站开发是做什么的
  • 免费做网站哪里有目前好的推广平台
  • ae做的动效怎么放在网站上什么网站可以免费发广告
  • 公司网络规划的重要性aso优化推广
  • 2022世界物联网百度网站怎样优化排名
  • 专做机票网站的软件公司谷歌搜索引擎免费入口
  • 湖南省人民政府办公厅seo网络营销是什么意思
  • 网站关键词优化方法郑州seo技术服务
  • 做电影电视剧网站推广c++线上培训机构哪个好
  • 全国生猪价格今日猪价行情表查询seo首页优化
  • 做英文行程的网站今日特大新闻新事
  • 网站是怎么做优化做网络推广要学些什么
  • 亚马逊 怎么做国外网站网站发布平台
  • 计算机上网题的模拟网站怎么做搜索引擎有哪些?
  • 昆明网站排名优化公司营销知识和技巧
  • 泉州营销型网站设计电商网站建设制作
  • 用国外服务器做网站百度关键词推广一年多少钱
  • 做图片的网站seo排名优化软件有用吗
  • 快看点自媒体平台注册账号入口seo搜索引擎优化哪家好
  • 租网站服务器一个月多少钱郑州专业seo哪家好