怎么查看MySQL語(yǔ)句有沒(méi)有用到索引?
通過(guò)explain,如以下例子:
EXPLAIN SELECT * FROM employees.titles WHERE emp_no='10001' AND title='Senior Engineer' AND from_date='1986-06-26';
| id | select_type | table | partitions | type | possible_keys | key | key_len | ref | filtered | rows | Extra |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | SIMPLE | titles | null | const | PRIMARY | PRIMARY | 59 | const,const,const | 10 | 1 |
- id:在?個(gè)?的查詢(xún)語(yǔ)句中每個(gè)SELECT關(guān)鍵字都對(duì)應(yīng)?個(gè)唯?的id ,如explain select * from s1 where id = (select id from s1 where name = 'egon1');第一個(gè)select的id是1,第二個(gè)select的id是2。有時(shí)候會(huì)出現(xiàn)兩個(gè)select,但是id卻都是1,這是因?yàn)閮?yōu)化器把子查詢(xún)變成了連接查詢(xún) 。
- select_type:select關(guān)鍵字對(duì)應(yīng)的那個(gè)查詢(xún)的類(lèi)型,如SIMPLE,PRIMARY,SUBQUERY,DEPENDENT,SNION 。
- table:每個(gè)查詢(xún)對(duì)應(yīng)的表名 。
- type:
type字段比較重要, 它提供了判斷查詢(xún)是否高效的重要依據(jù)依據(jù). 通過(guò)type字段, 我們判斷此次查詢(xún)是全表掃描還是索引掃描等。如const(主鍵索引或者唯一二級(jí)索引進(jìn)行等值匹配的情況下),ref(普通的?級(jí)索引列與常量進(jìn)?等值匹配),index(掃描全表索引的覆蓋索引) 。
通常來(lái)說(shuō), 不同的 type 類(lèi)型的性能關(guān)系如下:ALL < index < range ~ index_merge < ref < eq_ref < const < system``ALL 類(lèi)型因?yàn)槭侨頀呙? 因此在相同的查詢(xún)條件下, 它是速度最慢的. 而 index 類(lèi)型的查詢(xún)雖然不是全表掃描, 但是它掃描了所有的索引, 因此比 ALL 類(lèi)型的稍快.
- possible_key:查詢(xún)中可能用到的索引*(可以把用不到的刪掉,降低優(yōu)化器的優(yōu)化時(shí)間)* 。
- key:此字段是 MySQL 在當(dāng)前查詢(xún)時(shí)所真正使用到的索引。
- filtered:查詢(xún)器預(yù)測(cè)滿(mǎn)足下一次查詢(xún)條件的百分比 。
- rows 也是一個(gè)重要的字段. MySQL 查詢(xún)優(yōu)化器根據(jù)統(tǒng)計(jì)信息, 估算 SQL 要查找到結(jié)果集需要掃描讀取的數(shù)據(jù)行數(shù). 這個(gè)值非常直觀(guān)顯示 SQL 的效率好壞, 原則上 rows 越少越好。
- extra:表示額外信息,如Using where,Start temporary,End temporary,Using temporary等。
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀(guān)點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。
舉報(bào)投訴
-
數(shù)據(jù)結(jié)構(gòu)
+關(guān)注
關(guān)注
3文章
573瀏覽量
41584 -
MySQL
+關(guān)注
關(guān)注
1文章
905瀏覽量
29517 -
索引
+關(guān)注
關(guān)注
0文章
60瀏覽量
10810 -
字段
+關(guān)注
關(guān)注
0文章
15瀏覽量
1801
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
熱點(diǎn)推薦
PSOC4沒(méi)有用到的GPIO是什么狀態(tài)呢?需要特殊處理嗎?
如題,PSOC4沒(méi)有用到的GPIO是什么狀態(tài)?需要特殊處理嗎?有的MCU要求沒(méi)有用的GPIO要外接下拉電阻,PSOC需要這樣處理嗎?謝謝
發(fā)表于 02-18 08:50
有沒(méi)有用LabVIEW做過(guò)CAN報(bào)文接收和發(fā)送的
有沒(méi)有用LabVIEW做過(guò)CAN報(bào)文接收和發(fā)送的,用庫(kù)函數(shù)進(jìn)行發(fā)送和接收。有時(shí)候發(fā)送一會(huì)LabVIEW閃退,直接退出程序,有時(shí)候又能正常接收發(fā)送。不知道有沒(méi)有碰到這種情況的
發(fā)表于 04-03 14:06
有沒(méi)有用樹(shù)莓派 香蕉派制作3D打印機(jī)的教程?
有沒(méi)有用樹(shù)莓派 香蕉派制作3D打印機(jī)的教程?想自己做個(gè)3D打印機(jī) 不知有沒(méi)有教程
發(fā)表于 12-17 21:11
請(qǐng)問(wèn)有沒(méi)有用C++開(kāi)發(fā)STM32的
我大學(xué)學(xué)的C++,相對(duì)C語(yǔ)言來(lái)說(shuō)更喜歡C++語(yǔ)言,只是不知道有沒(méi)有用C++開(kāi)發(fā)STM32程序的,不是指僅僅玩玩,而是有沒(méi)有用到實(shí)際產(chǎn)品中的,有沒(méi)有出現(xiàn)什么問(wèn)題。
發(fā)表于 10-26 08:42
adc測(cè)量電壓沒(méi)有用到adc引腳和通道
想要ADC測(cè)量電池電壓,參考了半天例程,寫(xiě)出來(lái)也能電壓得到3.3V,但是我最后發(fā)現(xiàn)竟然沒(méi)有用到adc引腳和通道,也得出來(lái)了,所以我現(xiàn)在郁悶了。這個(gè)正常嗎,可能有什么問(wèn)題?
發(fā)表于 11-16 08:50
請(qǐng)問(wèn)在SD卡實(shí)驗(yàn)以及UCGUI試驗(yàn)中有沒(méi)有用到外部FLASH的?
請(qǐng)問(wèn)在SD卡實(shí)驗(yàn)以及UCGUI試驗(yàn)中有沒(méi)有用到外部FLASH 啊?也就是那個(gè)W25X16是用了SPI通信方式將外部FLASH 與SD卡連接的嗎?
發(fā)表于 10-08 07:48
有沒(méi)有用tls省內(nèi)存的方案啊
上傳文件走tls加密,測(cè)下來(lái)整個(gè)流程最大會(huì)分配50K內(nèi)存,這對(duì)于整個(gè)內(nèi)存只有80多k的單片機(jī)簡(jiǎn)直災(zāi)難,有沒(méi)有用tls省內(nèi)存的方案。
發(fā)表于 09-30 10:07
大家絕對(duì)沒(méi)有用過(guò)的iphone功能
大家絕對(duì)沒(méi)有用過(guò)的iphone功能
前言:由于本貼介紹的iphone計(jì)算器的終極隱藏功能具有非常意義:不但讓幾乎全世界的iphone用戶(hù)都再次
發(fā)表于 02-26 16:50
?672次閱讀
MySQL索引的使用問(wèn)題
一、前言 在MySQL中進(jìn)行SQL優(yōu)化的時(shí)候,經(jīng)常會(huì)在一些情況下,對(duì)MySQL能否利用索引有一些迷惑。譬如:1、MySQL 在遇到范圍查詢(xún)條件的時(shí)候就停止匹配了,那么到底是哪些范圍條件
商業(yè)智能到底有沒(méi)有用?_光點(diǎn)科技
隨著科技的迅猛發(fā)展,商業(yè)智能(Business Intelligence,簡(jiǎn)稱(chēng)BI)已經(jīng)成為許多企業(yè)日常運(yùn)營(yíng)的關(guān)鍵工具。然而,關(guān)于商業(yè)智能到底有沒(méi)有用的問(wèn)題仍然存在爭(zhēng)議。有人認(rèn)為商業(yè)智能是一種能夠?yàn)槠髽I(yè)帶來(lái)巨大價(jià)值的創(chuàng)新技術(shù),而另一些人則對(duì)其效果持懷疑態(tài)度。
怎么查看MySQL語(yǔ)句有沒(méi)有用到索引
評(píng)論