前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >用上索引就一定比全表扫描快?

用上索引就一定比全表扫描快?

作者头像
Lenis
发布2020-07-29 15:20:17
1.3K0
发布2020-07-29 15:20:17
举报
文章被收录于专栏:有关SQL有关SQL

图 | 榖依米

魔都已经入夏了。

在外 5 分钟,全身都能湿透的季节终于还是到来了。作为行政的小C,原本在空调下吹着风,贴着各处提交来的发票,倒也不算太糟糕。

正应了那句老话,“树欲止,而风不静;人欲凉,而事不遂。”上头来了个电话,可把小C给着急了。“在半小时内,搞定50杯星冰乐。口味发你邮箱了”

“就算 2 分钟一杯,50杯也得 100 分钟,半小时才30分钟,怎么可能嘛?”想虽这么想,小C还是把邮箱里的清单打印出来了。好在是CBD,门口就是长长的南京路,出发。

刚走出门口,小C又折回来了。平时奶茶喝得多,星巴克可不常去,店在哪呢?“还是去问问星巴克常客L”

小C走近L,“最近的星巴克在哪里啊,L?”

“怎么,想请我喝咖啡了?”

“多你一杯不多,老板在半小时内要50杯”

“公司对面的中信泰富广场,一楼有店”

谢谢两字还在空中飘着呢,小C已经人在门外了。

“不对,50杯,一家店来不及做啊”,L刚想提醒她,却连背影都看不见了。

于是,L 在白纸上这么画着:

“ 对面街上,至少有5家星巴克,假如每家分配10杯,那么顶多在 20 分钟内全部搞定。但小C,并不常喝,肯定不知道路线。那么她会买完10杯,回公司,再要个地址,再去买10杯,如此循环 5 次,人不仅跑累了,还容易把咖啡品质给搞砸咯。从第一杯等到第五十杯做完时,冰沙至少化了一半,那口味跟糖水没啥区别啦。”

“ 那么假如我告诉她 5 家挨着比较近的店,让她逐一到店,并行下单,每家10杯,送货上门,岂不是又轻松,咖啡还好喝。 ”

所以,小C的行走路径将会是这样的:

想来这和按照索引去找数据是一个道理。如果都要按照索引去找数据,就跟一家店买10杯一样,买完了回家,再去买一趟。这样循环几回,时间都浪费在了路上。而如果采用扫描全表的方式,从街头走到街尾,看到店就下单10杯,这样,连着5家店就可以完成任务了。

L 不禁笑了,“数据库的效率问题,还能用在买咖啡上,天才。”于是,编辑好微信,就给小C发了过去……

--完--

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-07-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 有关SQL 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档