{eval=Array;=+count(Array);}
MySQL索引的建立對于MySQL的高效運(yùn)行是很重要的,索引可以大大提高M(jìn)ySQL的檢索速度。
打個(gè)比方:
如果合理的設(shè)計(jì)且使用索引的MySQL是一輛蘭博基尼的話,那么沒有設(shè)計(jì)和使用索引的 MySQL就是一個(gè)人力三輪車。
索引分單列索引和組合索引。
單列索引,即一個(gè)索引只包含單個(gè)列,一個(gè)表可以有多個(gè)單列索引,但這不 是組合索引。
MySQL的索引類似于目錄,可以提高數(shù)據(jù)檢索的效率,降低數(shù)據(jù)庫的IO成本。
也可以簡單理解為:快速查找排好序的一種數(shù)據(jù)結(jié)構(gòu)。
如果表有100萬條記錄,通過索引查找記錄至少要比順序掃描記錄快1000倍。
為表設(shè)置索引要付出代價(jià)的:一是增加了數(shù)據(jù)庫的存儲空間,二是在插入和修改數(shù)據(jù)時(shí)要花費(fèi)較多的時(shí)間(因?yàn)樗饕惨S之變動)。
MySQL優(yōu)化是每個(gè)程序員都必須掌握的學(xué)習(xí)內(nèi)容,為了幫助大家進(jìn)階Java中高級、架構(gòu)師,我準(zhǔn)備了一套架構(gòu)師學(xué)習(xí)教程還可加入大牛學(xué)習(xí)圈子,分享SQL優(yōu)化、微服務(wù)架構(gòu)、分布式 JVM性能調(diào)優(yōu) Java并發(fā)編程和網(wǎng)絡(luò)編程 電商項(xiàng)目實(shí)戰(zhàn) redis等教程,各種大牛都是3-8年Java開發(fā)者,每天還有12年的架構(gòu)師做講解,助你進(jìn)階中高級Java程序員,增值漲薪!需要可關(guān)注本頭條號,并且發(fā)送私信關(guān)鍵詞:Java
索引相當(dāng)于是高效獲取數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu),這些數(shù)據(jù)結(jié)構(gòu)以某種方式引用數(shù)據(jù),這種結(jié)構(gòu)就是索引??珊唵卫斫鉃榕藕眯虻目焖俨檎覕?shù)據(jù)結(jié)構(gòu)。
索引方式有BTREE索引和HASH索引,實(shí)際開發(fā)中一般使用BTREE索引,很少用到HASH索引,因其范圍查詢及較多限制影響,但若對于等值查詢更快。若使用BTREE索引,一定要在Range級別以上,如在組合索引中,若前方使用范圍查詢,后面索引將失效。
0
回答0
回答0
回答0
回答0
回答0
回答0
回答0
回答0
回答0
回答