亚洲精品久久久久久第一页-人妻少妇精彩视品一区二区三区-91国产自拍免费视频-免费一级a在线播放视频正片-少妇天天日天天射天天爽-国产大屁股喷水视频在线观看-操美女骚穴抽插性爱视频-亚洲 欧美 中文字幕 丝袜-成人免费无码片在线观看

2021數(shù)據(jù)庫考試題及答案 mysql題目和詳細答案( 八 )


ref可用于使用’=’或'<=>’操作符作比較的索引列 。
5、 fulltext使用全文索引的時候是這個類型 。要注意,全文索引的優(yōu)先級很高,若全文索引和普通索引同時存在時,mysql不管代價,優(yōu)先選擇使用全文索引
6、ref_or_null跟ref類型類似,只是增加了null值的比較 。實際用的不多 。
eg.SELECT * FROM ref_tableWHERE key_column=expr OR key_column IS NULL;7、index_merge表示查詢使用了兩個以上的索引,最后取交集或者并集,常見and,or的條件使用了不同的索引,官方排序這個在ref_or_null之后,但是實際上由于要讀取多個索引,性能可能大部分時間都不如range
8、unique_subquery用于where中的in形式子查詢,子查詢返回不重復(fù)值唯一值,可以完全替換子查詢,效率更高 。該類型替換了下面形式的IN子查詢的ref: value IN (SELECT primary_key FROM single_table WHERE some_expr)
9、index_subquery該聯(lián)接類型類似于unique_subquery 。適用于非唯一索引,可以返回重復(fù)值 。
10、range索引范圍查詢,常見于使用 =, <>, >, >=, <, <=, IS NULL, <=>, BETWEEN, IN()或者like等運算符的查詢中 。
SELECT * FROM tbl_nameWHERE key_column BETWEEN 10 and 20;SELECT * FROM tbl_nameWHERE key_column IN (10,20,30);11、index索引全表掃描,把索引從頭到尾掃一遍 。這里包含兩種情況: 一種是查詢使用了覆蓋索引,那么它只需要掃描索引就可以獲得數(shù)據(jù),這個效率要比全表掃描要快,因為索引通常比數(shù)據(jù)表小,而且還能避免二次查詢 。在extra中顯示Using index,反之,如果在索引上進行全表掃描,沒有Using index的提示 。
# 此表見有一個name列索引 。# 因為查詢的列name上建有索引,所以如果這樣type走的是indexmysql> explain select name from testa;+----+-------------+-------+-------+---------------+----------+---------+------+------+-------------+| id | select_type | table | type| possible_keys | key| key_len | ref| rows | Extra|+----+-------------+-------+-------+---------------+----------+---------+------+------+-------------+|1 | SIMPLE| testa | index | NULL| idx_name | 33| NULL |2 | Using index |+----+-------------+-------+-------+---------------+----------+---------+------+------+-------------+1 row in set# 因為查詢的列cusno沒有建索引,或者查詢的列包含沒有索引的列,這樣查詢就會走ALL掃描,如下:mysql> explain select cusno from testa;+----+-------------+-------+------+---------------+------+---------+------+------+-------+| id | select_type | table | type | possible_keys | key| key_len | ref| rows | Extra |+----+-------------+-------+------+---------------+------+---------+------+------+-------+|1 | SIMPLE| testa | ALL| NULL| NULL | NULL| NULL |2 | NULL|+----+-------------+-------+------+---------------+------+---------+------+------+-------+1 row in set# 包含有未見索引的列mysql> explain select * from testa;+----+-------------+-------+------+---------------+------+---------+------+------+-------+| id | select_type | table | type | possible_keys | key| key_len | ref| rows | Extra |+----+-------------+-------+------+---------------+------+---------+------+------+-------+|1 | SIMPLE| testa | ALL| NULL| NULL | NULL| NULL |2 | NULL|+----+-------------+-------+------+---------------+------+---------+------+------+-------+1 row in set12、all全表掃描,性能最差 。
5. partitions版本5.7以前,該項是explain partitions顯示的選項,5.7以后成為了默認選項 。該列顯示的為分區(qū)表命中的分區(qū)情況 。非分區(qū)表該字段為空(null) 。
6. possible_keys查詢可能使用到的索引都會在這里列出來
7. key查詢真正使用到的索引 。select_type為index_merge時,這里可能出現(xiàn)兩個以上的索引,其他的select_type這里只會出現(xiàn)一個 。
8. key_len查詢用到的索引長度(字節(jié)數(shù)) 。如果是單列索引,那就整個索引長度算進去,如果是多列索引,那么查詢不一定都能使用到所有的列,用多少算多少 。留意下這個列的值,算一下你的多列索引總長度就知道有沒有使用到所有的列了 。


以上關(guān)于本文的內(nèi)容,僅作參考!溫馨提示:如遇健康、疾病相關(guān)的問題,請您及時就醫(yī)或請專業(yè)人士給予相關(guān)指導(dǎo)!

「愛刨根生活網(wǎng)」www.malaban59.cn小編還為您精選了以下內(nèi)容,希望對您有所幫助: