面試問答
資料庫index、primary key、unique差異
1. Index(索...
總共四關面試
第一關為線上筆試,公司會給一份Word檔,當中會有些基礎問題,例如API規劃、資料庫規劃、你寫過什麼測試
等問題。
第二關跟資深工程師面,基本上就是聊天,對方會問一些基礎知識,例如資料庫中的index、PK、unique key的差異、OOP的概念、testing的相關問題、讀英文文件,最後會需要現場規劃一些API溝通邏輯。
第三關跟主管&人資
第四關跟老闆
面試問答
資料庫index、primary key、unique差異
1. Index(索引):
索引是用來加快查詢速度的資料結構,通常基於一個或多個資料庫表的列(欄位)上建立。
索引使得資料庫管理系統能夠更快地找到和檢索特定的資料行,特別是在大型資料集上。
索引並不限制欄位中的值是否唯一,一個欄位可以有重複的索引值。
2. Primary Key(主鍵):
主鍵是一個用來唯一標識資料庫表中每一行的欄位或一組欄位。在關聯式資料庫中,每一個表都應該有一個主鍵。
主鍵必須是唯一且不為空的,它們通常在建立資料表時被定義。
主鍵也是一種索引,但它的作用是唯一性約束而不是性能優化。通常資料庫系統會自動在主鍵上建立索引以確保查詢的效能。
3. Unique(唯一鍵):
唯一鍵是一個資料庫欄位或一組欄位的約束,確保該欄位中的值是唯一的,即不允許重複的值。
和主鍵不同,唯一鍵允許空值(NULL)。
唯一鍵也可以是一種索引,用來加速查詢。當查詢指定唯一鍵值時,資料庫可以直接使用索引來查找對應的資料。
總結來說,Index(索引)是用來提高查詢效能的資料結構,而 Primary Key(主鍵)和 Unique(唯一鍵)則是用來保證資料的唯一性。主鍵是一個資料表中用來唯一識別每一行的欄位,而唯一鍵則是確保特定欄位中的值是唯一的,但不一定是用來唯一識別每一行的。
面試建議
扎實的面試過程,基本上都是問基礎問題,只要有讀或實做過基本上都答得出來,對方工程師滿好聊的。
建議面試前可以小小準備,避免屆時緊張~