面試之SQL優化怎麼回答?

2022-04-16 15:46:36 字數 620 閱讀 6124

想必小夥伴們面試度時候,都被問過sql優化吧?然鵝實際上工作中,這個點大部分人接觸的很少,加上面試本來就有點緊張,導致很多人,只能想到一點點,甚至一臉懵圈,那麼面試度時候遇到這個問題應該怎麼回答呢?

下面我就來說說我的看法:

(1)最重要的是盡量避免全表掃瞄」

(2)適當的建立索引,考慮在 where 及 order by 涉及的列上建立索引(把所建的索引所用列名,用在where語句中,並盡量在條件的最右邊,索引相關知識:

(3)盡量避免在 where 子句中對字段進行 null 值判斷、使用!=或<>操作符、使用 or 來連線條件、對欄位進行函式操作等

(4)in 和 not in 也要慎用,否則可能會導致全表掃瞄

(5)很多時候用 exists 代替 in 是乙個好的選擇

(6)盡量使用數字型字段,若只含數值資訊的字段盡量不要設計為字元型,這會降低查詢和連線的效能,並會增加儲存開銷。

(7)盡可能的使用 varchar 代替 char ,因為首先變長字段儲存空間小,可以節省儲存空間,其次對於查詢來說,在乙個相對較小的字段內搜尋效率顯然要高些。  

(8)把條件最小的寫在最右邊,如果id=?寫在最右邊

(9)盡量少寫子查詢,用join語句代替,少寫in,like,or

面試被問到了「短板」,該怎麼回答?

提問 如果面試的時候被問到一些不擅長的內容,比如自己的一些 短板 該怎麼回答?無憂專家 面試被問到不擅長的,這是很正常的事情。人無完人,總有可能某些方面是短板,所以有不擅長,很正常,如果你說沒有不擅長的事情,反而讓面試官感覺不真實。一般來說,不擅長的問題分兩種,一種情況是你應聘職位的要求裡,有你不擅...

面試題中問到 aop di ioc 怎麼回答

ioc 就是我們需要乙個物件 以前我們是去 new 現在我們是直接向 spring 要我們需要的那個物件。aop 就是 在不修改源 的基礎上 新增新業務,比如 日誌 效能檢測 di 就是 乙個物件a 需要去訪問資料庫 以前我們是自己編寫 去建立乙個connction物件 來連線物件,現在我們只需要用...

mysql sql優化面試題 SQL優化 面試題

因為現在面試經常需要問的需要sql優化,問的具體操作步驟時候的常見做法,所以網上總結這些操作步驟 sql優化的具體操作 1 在表中建立索引,優先考慮where group by使用到的字段。2 盡量避免使用select 返回無用的字段會降低查詢效率。如下 select from t 優化方式 使用具...