濮阳杆衣贸易有限公司

主頁 > 知識庫 > Innodb表select查詢順序

Innodb表select查詢順序

熱門標簽:沈陽智能外呼系統(tǒng)供應商 手機外呼系統(tǒng)違法嗎 如何選擇優(yōu)質的外呼系統(tǒng) 地圖簡圖標注 南通電銷外呼系統(tǒng)哪家強 桂林云電銷機器人收費 谷歌地圖標注位置圖解 東莞外呼企業(yè)管理系統(tǒng) 清遠申請400電話

今天知數(shù)堂一個學生反饋說在優(yōu)化課中老師講Innodb是以主鍵排序存儲,讀取的時間以主鍵為順序讀取,但發(fā)現(xiàn)個例外,如下:

CREATE TABLE zst_t1 ( 

uid int(10) NOT NULL AUTO_INCREMENT, 

id int(11) NOT NULL, 

PRIMARY KEY ( uid ), 

KEY idx_id ( id ) 

) ENGINE=InnoDB;'

寫入數(shù)據(jù):

INSERT INTO zst_t1 VALUES (1,1),(12,1),(22,1),(23,1),(33,1),(2,2),(3,2),(10,2),(11,2),(4,4),(13,4),(14,4); 

執(zhí)行查詢:

select * from zst_t1;

為什么這個順序是亂的,不按順序排列呢?難道Innodb表并不是全按主鍵存儲?

使用innodb_ruby這個工具查看一下存儲結構什么樣

看樣子存儲還是按主鍵排序存儲的。沒毛病。

再來看一下該表的索引:

看到這里應該明白了怎么會事了吧,原來這個查詢是走的索引覆蓋,沒有在進行回表讀取原數(shù)據(jù)。另外,也在此說明,Innodb二索索引包含了主鍵存儲。

來繼續(xù)證明一下:

看到using index 吧,表示這個查詢利用索引查詢出來結果,不用讀取原表。

那么我們給造一個通過主鍵讀取數(shù)據(jù)操作:

select * from zst_t1 use index(primary);

select * from zst_t1 use index(primary);  #確認一下。

總結:

這個其實就是一個索引包含的查詢案例。 如果靜下來思考一下,也許很快就明白了。也不用這樣去查問題。

技術在于折騰,多搞搞就明白了:)。

您可能感興趣的文章:
  • 可以改善mysql性能的InnoDB配置參數(shù)
  • MySQL Innodb表導致死鎖日志情況分析與歸納
  • mysql更改引擎(InnoDB,MyISAM)的方法
  • MySQL不支持InnoDB的解決方法
  • Mysql啟動中 InnoDB: Error: log file ./ib_logfile0 is of different size 0 5242880 bytes 的問題
  • 淺談MySQL存儲引擎選擇 InnoDB與MyISAM的優(yōu)缺點分析
  • Xtrabackup使用指南 InnoDB數(shù)據(jù)備份工具
  • MYSQL無法啟動提示: Default storage engine (InnoDB) is not available的解決方法
  • MySQL數(shù)據(jù)庫INNODB表損壞修復處理過程分享

標簽:天津 臨沂 湖州 成都 常德 重慶 貴州 內蒙古

巨人網絡通訊聲明:本文標題《Innodb表select查詢順序》,本文關鍵詞  Innodb,表,select,查詢,順序,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Innodb表select查詢順序》相關的同類信息!
  • 本頁收集關于Innodb表select查詢順序的相關信息資訊供網民參考!
  • 推薦文章
    万山特区| 军事| 新乐市| 章丘市| 南漳县| 金乡县| 珠海市| 岳池县| 济阳县| 日照市| 安阳市| 邢台县| 宣恩县| 横峰县| 息烽县| 泉州市| 毕节市| 冀州市| 鄢陵县| 炉霍县| 伽师县| 辛集市| 阜宁县| 达州市| 寿阳县| 益阳市| 工布江达县| 崇明县| 乌拉特后旗| 扬中市| 滁州市| 航空| 吉木萨尔县| 呼伦贝尔市| 西城区| 宜兰市| 吉林省| 肥城市| 遂宁市| 双柏县| 理塘县|