[SQL ] mysql explain 一個 query的效能問題

看板Database作者 (carl)時間13年前 (2011/07/25 17:06), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/2 (看更多)
我有個table 是記課堂測驗的回答情況 主要的欄位為 課程編號 測驗編號 題目編號 學生 和其他資料 現在目前是用 (課程編號 測驗編號 題目編號 學生)當作primary key 我最近在看slow query的時候發現 有個query速度很慢 所以看了一下 他是拿 課程編號 測驗編號 學生 當作條件抓資料 出來的結果如下圖 https://picasaweb.google.com/lh/photo/XOI8biDfoFUET4Pq7seIGA?feat=directlink 後來我將 (課程編號 測驗編號 學生) 另外建了index之後 如下圖 https://picasaweb.google.com/lh/photo/AnhtOitLNngjS_cE0iiLWg?feat=directlink 速度有提昇不少 從0.1sec衝到0.0004sec 這邊可以看到雖然type都是ref 但是rows變少很多 key_len加了4 1. 但是我有個疑問是 key_len不是越小越準嗎? 那越準不是應該越好嗎??? 有點不懂這個判斷的依據 2. 如果索引的大小比data的大小還大是不是很奇怪啊囧 還是我應該要把primary key給刪掉呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.123.105.191 ※ 編輯: carlcarl 來自: 140.123.105.191 (07/25 17:06)
文章代碼(AID): #1EBJ7xYx (Database)
文章代碼(AID): #1EBJ7xYx (Database)