資料庫建立索引(index)的注意事項

更新於 發佈於 閱讀時間約 1 分鐘
索引(index)能提升搜尋比對資料時的效能


  • 會經常被where、order by、group by作為條件使用的欄位,建議可以考慮將其建立為索引 (index)。
如果該欄位的內容值的變化不多、不大的話,可以不用特地建立成索引。
例如該欄位是用來記錄目前程式執行到哪一個階段的流程flag,可能的內容值只有1、2、3等表示目前執行到三個階段中的哪一個階段。
沒有必要特地在這個欄位上建立索引,因為效果也不會多顯著。


  • 索引的欄位盡量不能為null或空值。


  • 如果where之後的條件有使用"OR",那麼所有OR的欄位都必須建立索引。
只有一個欄位有建立索引,但其他搜尋條件的欄位沒有建立索引的話,就沒有太大的意義。
因為還是要一筆一筆去比對。

如果是使用"AND",第一個條件欄位沒有通過就不會繼續根據第二個條件欄位去做比對查詢。但"OR"不一樣,第一個沒過,還是會根據第二個、第三個條件去搜尋,所以速度不會比較快。


  • 如果函式使用索引欄位做計算,索引就沒有意義。


  • 建立索引也是會占用空間,所以不是很常做為條件使用的欄位的話,就不要設定為索引。
我的Java學習日記
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
為何要重寫equals方法? 為何要重寫hashCode方法?
兩種方式進行物件比較,使用Comparator或使用Comparable
併發,多個事情在同一時間段內同時發生 並行,多個事情在同一個時間點上同時發生
Map是由Key-Value所組成的 而Key的部分不能重複,因為是Set
Set 是繼承 Collection API的一個子接口 interface 唯一的限制是不允許重覆的物件存在 所以當不想有相同的物件出現,就可以選擇用Set
程式建立thread,然後會交給硬體中的scheduler去排定執行、切換資源 我們無法強制指定順序,因為電腦有太多任務需要執行,但資源有限,因此會由scheduler去分配、切換資源 電腦能同時執行多項任務
為何要重寫equals方法? 為何要重寫hashCode方法?
兩種方式進行物件比較,使用Comparator或使用Comparable
併發,多個事情在同一時間段內同時發生 並行,多個事情在同一個時間點上同時發生
Map是由Key-Value所組成的 而Key的部分不能重複,因為是Set
Set 是繼承 Collection API的一個子接口 interface 唯一的限制是不允許重覆的物件存在 所以當不想有相同的物件出現,就可以選擇用Set
程式建立thread,然後會交給硬體中的scheduler去排定執行、切換資源 我們無法強制指定順序,因為電腦有太多任務需要執行,但資源有限,因此會由scheduler去分配、切換資源 電腦能同時執行多項任務
你可能也想看
Google News 追蹤
Thumbnail
最近國泰世華CUBE App推出的「美股定期定額」功能,讓使用者可以方便地進行跨境理財(但讀者仍需根據自身需求審慎考量),除了享有美股定期定額的新功能,也同時享有台股定期定額的功能,可以一站滿足我們理財的需求! 透過國泰世華CUBE App線上開台股證券戶+複委託戶,流程最快僅需要5分鐘。
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
本文介紹了資料庫索引的基本原理、類型以及其在資料查詢中的重要性。索引類似於書的目錄,不僅可以提高查詢效率,還有助於組織資料。文章詳細說明瞭主索引、密集索引、稀疏索引、叢索引和非叢索引的定義與特點,並提供了實際的比喻和例子。透過深入瞭解索引的運作,讀者可以更好地設計和優化資料庫,並提升查詢效能。
Thumbnail
本文探討資料庫中的索引及其關鍵概念,涵蓋何謂索引、其類型與設立原因、索引失效情況及 B-tree 與 B+ tree 的差異,並簡要區分主鍵與外鍵的功能。瞭解索引的運作有助於提升資料查詢效率,並正確選擇適當的索引策略,以確保資料庫的高效運行。
SQL 中的 Index 是什麼? 加了以後會有什麼影響? 想像你在讀一本厚厚的小說,裡面有幾百頁。如果你想要找到某個關鍵情節,比如「主角第一次登場的地方」,如果你沒有做任何標記,你可能得從頭到尾翻書,直到找到那一頁為止,這樣會花很多時間。 ▌Index 就像書籤一樣
Thumbnail
※ 什麼是WHERE? 使用 WHERE來設定條件,可以幫助我們縮小查詢結果的範圍,取得想要的結果。 ※ 語法: ※ 解析順序: From:先看是哪一張table→table裡面符合Where指定條件的record→再看Select指定的是那些欄位→再根據那個欄位進行排序。 ※ 使⽤⽅
「用一本沒有索引的書會很痛苦。」 「第一個網頁,其實就是內容索引。」 「當你用Google 搜尋,你並不是在搜尋網路,你是在搜尋Google對網路的索引。」 「索引是一個關於時間與知識之間關係的故事。 一方面你想快速查到你想要的資訊, 另一方面你想要知識能像是一塊一塊隨
Thumbnail
這篇文章主要是介紹了SQL查詢效能調校的方法,針對索引最佳化做了整理和分享,並提供了一些注意事項和建議。
Thumbnail
當你在操作網站 SEO 排名時,索引是你需要了解的觀念。因為沒有索引就沒有排名;沒有排名就拿不到免費流量的入場券。那麼要如何確認網頁已收錄在 Google 資料庫中?本篇文章會教你 3 種檢查方法。
※ 什麼是資料庫正規化?為什麼需要正規化? 什麼是資料庫正規化? 資料庫正規化是一種設計關聯式資料庫的方法,目的是建立良好結構的關聯表,主要目的有二: 去除重複性:建立沒有重複的關聯表。因為重複資料不只浪費資料庫的儲存空間,而且會產生資料維護上的問題。 去除不一致的相依性:資料相依是指關聯表
Thumbnail
在用 QUERY 查詢資料時,你曾遇過在 WHERE 寫很多個 OR 的狀況嗎?有個更簡單好用的寫法推薦給你,來瞧瞧!
Thumbnail
※ 基本操作:SQL 語法,SELECT, WHERE, CREATE, UPDATE, DELETE。 SELECT:從資料庫中或資料表中指定要選擇的欄位中取得資料,稱之為查詢 (query)。 ※ 語法:要由兩部分構成,第一部分是要 "拿什麼" 資料 (若有多項用逗號隔開);第二部分則為
Thumbnail
最近國泰世華CUBE App推出的「美股定期定額」功能,讓使用者可以方便地進行跨境理財(但讀者仍需根據自身需求審慎考量),除了享有美股定期定額的新功能,也同時享有台股定期定額的功能,可以一站滿足我們理財的需求! 透過國泰世華CUBE App線上開台股證券戶+複委託戶,流程最快僅需要5分鐘。
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
本文介紹了資料庫索引的基本原理、類型以及其在資料查詢中的重要性。索引類似於書的目錄,不僅可以提高查詢效率,還有助於組織資料。文章詳細說明瞭主索引、密集索引、稀疏索引、叢索引和非叢索引的定義與特點,並提供了實際的比喻和例子。透過深入瞭解索引的運作,讀者可以更好地設計和優化資料庫,並提升查詢效能。
Thumbnail
本文探討資料庫中的索引及其關鍵概念,涵蓋何謂索引、其類型與設立原因、索引失效情況及 B-tree 與 B+ tree 的差異,並簡要區分主鍵與外鍵的功能。瞭解索引的運作有助於提升資料查詢效率,並正確選擇適當的索引策略,以確保資料庫的高效運行。
SQL 中的 Index 是什麼? 加了以後會有什麼影響? 想像你在讀一本厚厚的小說,裡面有幾百頁。如果你想要找到某個關鍵情節,比如「主角第一次登場的地方」,如果你沒有做任何標記,你可能得從頭到尾翻書,直到找到那一頁為止,這樣會花很多時間。 ▌Index 就像書籤一樣
Thumbnail
※ 什麼是WHERE? 使用 WHERE來設定條件,可以幫助我們縮小查詢結果的範圍,取得想要的結果。 ※ 語法: ※ 解析順序: From:先看是哪一張table→table裡面符合Where指定條件的record→再看Select指定的是那些欄位→再根據那個欄位進行排序。 ※ 使⽤⽅
「用一本沒有索引的書會很痛苦。」 「第一個網頁,其實就是內容索引。」 「當你用Google 搜尋,你並不是在搜尋網路,你是在搜尋Google對網路的索引。」 「索引是一個關於時間與知識之間關係的故事。 一方面你想快速查到你想要的資訊, 另一方面你想要知識能像是一塊一塊隨
Thumbnail
這篇文章主要是介紹了SQL查詢效能調校的方法,針對索引最佳化做了整理和分享,並提供了一些注意事項和建議。
Thumbnail
當你在操作網站 SEO 排名時,索引是你需要了解的觀念。因為沒有索引就沒有排名;沒有排名就拿不到免費流量的入場券。那麼要如何確認網頁已收錄在 Google 資料庫中?本篇文章會教你 3 種檢查方法。
※ 什麼是資料庫正規化?為什麼需要正規化? 什麼是資料庫正規化? 資料庫正規化是一種設計關聯式資料庫的方法,目的是建立良好結構的關聯表,主要目的有二: 去除重複性:建立沒有重複的關聯表。因為重複資料不只浪費資料庫的儲存空間,而且會產生資料維護上的問題。 去除不一致的相依性:資料相依是指關聯表
Thumbnail
在用 QUERY 查詢資料時,你曾遇過在 WHERE 寫很多個 OR 的狀況嗎?有個更簡單好用的寫法推薦給你,來瞧瞧!
Thumbnail
※ 基本操作:SQL 語法,SELECT, WHERE, CREATE, UPDATE, DELETE。 SELECT:從資料庫中或資料表中指定要選擇的欄位中取得資料,稱之為查詢 (query)。 ※ 語法:要由兩部分構成,第一部分是要 "拿什麼" 資料 (若有多項用逗號隔開);第二部分則為