Skip to content

Index

索引

01你是不是遇到這個 / THE SYMPTOM

我的查詢一開始很快,資料變多以後變超慢,每次搜尋好像都要把整張表從頭翻到尾。我想讓「用某個欄位查資料」變快,但不知道該加什麼。

↑ 如果你點頭了,你要的關鍵字就是 Index

02這是什麼 / DEFINITION

索引是資料庫幫某個(或某幾個)欄位另外建立的一份排序好的查找結構,讓資料庫不用整表掃描就能快速定位到符合條件的列,原理類似書本後面的索引頁。

03什麼時候用 / WHEN TO USE

當你常常用某個欄位做 WHERE 過濾、JOIN、ORDER BY,而資料量大到查詢明顯變慢時。最常見的是 email、user_id、建立時間這類常被搜尋的欄位。

04怎麼跟 AI 說 / HOW TO ASK

直接複製這句、貼進 Claude Code / Cursor / Copilot / ChatGPT:

users 表用 email 查詢很慢,幫我在 email 欄位加一個 index(索引),並用 EXPLAIN 確認查詢有走到索引、沒有做全表掃描。
05常見坑 / WATCH OUT

索引不是越多越好:每多一個索引,寫入(INSERT/UPDATE)就要多維護一份結構、變慢且佔空間。另外索引只對「有用到該欄位做過濾」的查詢有效,欄位上做運算或用 LIKE '%xxx' 開頭萬用字元時常常吃不到索引。

06相關的詞 / RELATED