【百度分享】MySQL 5.1分区技术初探(五),该如何解决
Jun 13, 2016 pm 01:50 PM
【百度分享】MySQL 5.1分区技术初探(五)
3.1 单表查询
从销售记录中找到1999年整年的销售记录有多少条,这个很简单,查询语句如下:
select count(*) from salaries s where s.from_date between "1999-01-01" and "1999-12-31" ;
那么对于分区前后的查询性能却有很大的差别:
通过如上可知,利用分区之后它只需扫描p16分区,访问的记录明显减少,所以性能自然有较大的提升:
无采用分区技术 采用分区技术
3.2 单表查询-BAD Case
若现在有如下查询:
select count(*) from salaries s where year(s.from_date)=1999;
那么它是否能够利用到分区技术呢,答案是否定的。为什么呢,因为分区中的key是s.from_date,而不是year(s.from_date),mysql并不能很智能地判断year是1999的,那么它就是分为p16分区,这个可以通过如下的查询计划可以证实:
也就是其实它访问了所有的分区,所以并没有很好地利用分区功能,将SQL改写如下:
select count(*) from salaries s where year between '1999-01-01' and '1999-12-31' ;
则查询计划如下:
可知,书写正确的SQL可以完全表现出两种相差特别大的性能。
------解决方案--------------------
学习,学习。
------解决方案--------------------
学习 学习
------解决方案--------------------
恩 不错
------解决方案--------------------
进来看看,学习一下。
------解决方案--------------------
mark mark baidu
------解决方案--------------------
顶顶顶顶。。。。。
------解决方案--------------------
进来看看Mysql
------解决方案--------------------
飘过~~~~
------解决方案--------------------
学习,看看哈!
------解决方案--------------------
人云亦云来着~ 也来看看
------解决方案--------------------
学习~
------解决方案--------------------
这个要学习。
------解决方案--------------------
看得不是很懂。路过学习了。
------解决方案--------------------
hao
------解决方案--------------------
路过啊。。。看看
------解决方案--------------------
我也来回回看
------解决方案--------------------
学习一下了。
------解决方案--------------------
是因为mysql的关系所以这里这么热闹的吗?
听说只要回复了,就有十个积分。不知道是真是假!
------解决方案--------------------
学习,学习!
------解决方案--------------------
遇到过这样的面试题,当时回答正确了,嘎嘎
------解决方案--------------------
为什么都看不懂
------解决方案--------------------
我正在学习mysql呢
------解决方案--------------------
学习一下,谢谢楼主
------解决方案--------------------
版主看不清楚啊
------解决方案--------------------
不是很清楚啊
------解决方案--------------------
晕。。。。。
------解决方案--------------------
来学习了,谢谢楼主!
------解决方案--------------------

Article chaud

Outils chauds Tags

Article chaud

Tags d'article chaud

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Compétences de traitement de structures de données volumineuses de PHP

Comment optimiser les performances des requêtes MySQL en PHP ?

Comment utiliser la sauvegarde et la restauration MySQL en PHP ?

Comment insérer des données dans une table MySQL en utilisant PHP ?

Quels sont les scénarios d'application des types d'énumération Java dans les bases de données ?

Comment corriger les erreurs mysql_native_password non chargé sur MySQL 8.4

Stratégies d'optimisation des performances pour la pagination des tableaux PHP

Comment utiliser les procédures stockées MySQL en PHP ?
