亚洲免费在线视频-亚洲啊v-久久免费精品视频-国产精品va-看片地址-成人在线视频网

您的位置:首頁技術(shù)文章
文章詳情頁

mysql 如何獲取SQL 語句的執(zhí)行消耗時(shí)間

瀏覽:124日期:2022-06-15 08:26:55

問題描述

問題解答

回答1:

https://segmentfault.com/a/11... 看這篇文章 執(zhí)行時(shí)間 mysql會(huì)自動(dòng)返回啊

mysql 如何獲取SQL 語句的執(zhí)行消耗時(shí)間紅色不是執(zhí)行時(shí)間嗎?下面是優(yōu)化查詢的方案 你可以參考一下。4.查詢優(yōu)化4.1.EXPLAIN在MySQL中可以使用EXPLAIN查看SQL執(zhí)行計(jì)劃,用法:EXPLAIN SELECT * FROM tb_item 4.2.結(jié)果說明4.2.1.idSELECT識(shí)別符。這是SELECT查詢序列號(hào)。這個(gè)不重要。4.2.2.select_type表示SELECT語句的類型。

有以下幾種值:1、SIMPLE表示簡(jiǎn)單查詢,其中不包含連接查詢和子查詢。2、PRIMARY表示主查詢,或者是最外面的查詢語句。

3、UNION表示連接查詢的第2個(gè)或后面的查詢語句。

4、DEPENDENT UNIONUNION中的第二個(gè)或后面的SELECT語句,取決于外面的查詢。5、UNION RESULT連接查詢的結(jié)果。6、SUBQUERY子查詢中的第1個(gè)SELECT語句。

7、DEPENDENT SUBQUERY子查詢中的第1個(gè)SELECT語句,取決于外面的查詢。8、DERIVEDSELECT(FROM 子句的子查詢)。4.2.3.table表示查詢的表。4.2.4.type(重要)表示表的連接類型。以下的連接類型的順序是從最佳類型到最差類型:

1、system表僅有一行,這是const類型的特列,平時(shí)不會(huì)出現(xiàn),這個(gè)也可以忽略不計(jì)。2、const數(shù)據(jù)表最多只有一個(gè)匹配行,因?yàn)橹黄ヅ湟恍袛?shù)據(jù),所以很快,常用于PRIMARY KEY或者UNIQUE索引的查詢,可理解為const是最優(yōu)化的。

3、eq_refmysql手冊(cè)是這樣說的:'對(duì)于每個(gè)來自于前面的表的行組合,從該表中讀取一行。這可能是最好的聯(lián)接類型,除了const類型。它用在一個(gè)索引的所有部分被聯(lián)接使用并且索引是UNIQUE或PRIMARY KEY'。eq_ref可以用于使用=比較帶索引的列。

4、ref查詢條件索引既不是UNIQUE也不是PRIMARY KEY的情況。ref可用于=或<或>操作符的帶索引的列。

5、ref_or_null該聯(lián)接類型如同ref,但是添加了MySQL可以專門搜索包含NULL值的行。在解決子查詢中經(jīng)常使用該聯(lián)接類型的優(yōu)化。

上面這五種情況都是很理想的索引使用情況。

6、index_merge該聯(lián)接類型表示使用了索引合并優(yōu)化方法。在這種情況下,key列包含了使用的索引的清單,key_len包含了使用的索引的最長(zhǎng)的關(guān)鍵元素。7、unique_subquery該類型替換了下面形式的IN子查詢的ref: value IN (SELECT primary_key FROM single_table WHERE some_expr) unique_subquery是一個(gè)索引查找函數(shù),可以完全替換子查詢,效率更高。8、index_subquery該聯(lián)接類型類似于unique_subquery。可以替換IN子查詢,但只適合下列形式的子查詢中的非唯一索引: value IN (SELECT key_column FROM single_table WHERE some_expr)9、range只檢索給定范圍的行,使用一個(gè)索引來選擇行。

10、index該聯(lián)接類型與ALL相同,除了只有索引樹被掃描。這通常比ALL快,因?yàn)樗饕募ǔ1葦?shù)據(jù)文件小。11、ALL對(duì)于每個(gè)來自于先前的表的行組合,進(jìn)行完整的表掃描。(性能最差)4.2.5.possible_keys指出MySQL能使用哪個(gè)索引在該表中找到行。如果該列為NULL,說明沒有使用索引,可以對(duì)該列創(chuàng)建索引來提高性能。4.2.6.key顯示MySQL實(shí)際決定使用的鍵(索引)。如果沒有選擇索引,鍵是NULL。

可以強(qiáng)制使用索引或者忽略索引:

4.2.7.key_len顯示MySQL決定使用的鍵長(zhǎng)度。如果鍵是NULL,則長(zhǎng)度為NULL。

注意:key_len是確定了MySQL將實(shí)際使用的索引長(zhǎng)度。

4.2.8.ref顯示使用哪個(gè)列或常數(shù)與key一起從表中選擇行。4.2.9.rows顯示MySQL認(rèn)為它執(zhí)行查詢時(shí)必須檢查的行數(shù)。4.2.10.Extra該列包含MySQL解決查詢的詳細(xì)信息?Distinct:MySQL發(fā)現(xiàn)第1個(gè)匹配行后,停止為當(dāng)前的行組合搜索更多的行。?Not exists:MySQL能夠?qū)Σ樵冞M(jìn)行LEFT JOIN優(yōu)化,發(fā)現(xiàn)1個(gè)匹配LEFT JOIN標(biāo)準(zhǔn)的行后,不再為前面的的行組合在該表內(nèi)檢查更多的行。?range checked for each record (index map: #):MySQL沒有發(fā)現(xiàn)好的可以使用的索引,但發(fā)現(xiàn)如果來自前面的表的列值已知,可能部分索引可以使用。?Using filesort:MySQL需要額外的一次傳遞,以找出如何按排序順序檢索行。?Using index:從只使用索引樹中的信息而不需要進(jìn)一步搜索讀取實(shí)際的行來檢索表中的列信息。?Using temporary:為了解決查詢,MySQL需要?jiǎng)?chuàng)建一個(gè)臨時(shí)表來容納結(jié)果。?Using where:WHERE 子句用于限制哪一個(gè)行匹配下一個(gè)表或發(fā)送到客戶。?Using sort_union(...), Using union(...), Using intersect(...):這些函數(shù)說明如何為index_merge聯(lián)接類型合并索引掃描。?Using index for group-by:類似于訪問表的Using index方式,Using index for group-by表示MySQL發(fā)現(xiàn)了一個(gè)索引,可以用來查 詢GROUP BY或DISTINCT查詢的所有列,而不要額外搜索硬盤訪問實(shí)際的表。

相關(guān)文章:
主站蜘蛛池模板: 一级毛片在线不卡直接观看 | 中文字幕水野优香在线网在线 | 爆操巨乳美女 | 8050网午夜一级毛片免费不卡 | 久久99国产精品久久99果冻传媒 | 国产精品视频久久 | 露脸 在线 国产 眼镜 | 久久思思爱 | 日本韩国中文字幕 | 夜色福利久久久久久777777 | 欧美亚洲黄色 | 成 人色 网 站 欧美大片在线观看 | 欧美片欧美日韩国产综合片 | 国产亚洲欧美日韩国产片 | 香蕉伊人网 | 青青草国产免费一区二区 | 国产精品成人免费视频 | 国产亚洲综合精品一区二区三区 | 男女扒开双腿猛进入免费网站 | 国产cao| 欧美一区二区三区不卡片 | 国产一区二区三区在线免费观看 | 国产久草视频在线 | 久久久久久久91精品免费观看 | 成在线人视频免费视频 | 日本a级毛片免费观看 | 久久久精品一区 | 国产精品久久免费视频 | 欧美手机在线视频 | 国产精品青草久久久久福利99 | 三级毛片网站 | 免费一级特黄欧美大片勹久久网 | 久久久青青久久国产精品 | 日韩欧美国产精品第一页不卡 | 国产老鸭窝毛片一区二区 | 91在线免费观看网站 | 中文三级视频 | 成人免费一区二区三区在线观看 | 日本 欧美 在线 | 国产精彩视频在线 | 国产在线欧美日韩精品一区二区 |