阿里巴巴開發手冊之索引規約

2021-10-23 10:47:56 字數 538 閱讀 8095

業務上具有唯一特性的字段,即使是組合字段,也必須建成唯一索引,不要以為唯一索引影響了insert速度,這個速度損耗可以忽略,但提高查詢

速度是明顯的

2.超過三個表禁止join,多表關聯查詢時,被關聯的字段需要有索引

即使是雙表也要注意表索引,sql效能

3varchar欄位建立索引時,必須指定索引長度,沒必要對全欄位建立索引。

4.頁面搜尋嚴禁左模糊或者全模糊,如果需要做搜尋引擎來解決

5.order by場景,注意索引的有序性。遵循最佳左字首原則

6,利用覆蓋索引,避免回表

7sql效能優化目標,至少達到range(範圍檢索),要求是ref(普通索引),如果是consts最好(主鍵或者唯一索引),在優化階段即可讀取到資料。

8.建立組合索引的時候,區分度最高的放最左邊。

例如where c>? and d = ? 必須d放在索引的最前列, 組合索引 idx_d_c

對索引誤解,認為索引佔空間,插入速度減慢,

認為索引寧濫勿缺,乙個查詢乙個索引。

阿里巴巴開發手冊 Mysql規約

不要使用 count 列名 或 count 常量 來替代 count count 會統計值為null的行,而 count 列名 不會統計此列為 null值的行。count distinct col 計算該列除 null之外的不重複數量。當某一列的值全是 null時,count col 的返回結果為 ...

阿里巴巴開發手冊 程式設計規約(2)

1.2 常量定義 1,不允許使用任何魔法值 即未經預先定義的常量 直接出現在 中 2,在long或者long出事賦值時,數值後使用大寫的l,不能是小寫的l。小寫l容易與數字1混淆造成誤解 3,不要是用乙個常量類維護所有常量,要按常量功能進行歸類,分開維護 4,常量的復用層次有5層 跨應用共享常量 應...

阿里巴巴開發規約之命名風格

我下邊總結的只是我自己平時需要注意的 1.userdo而不是userdo 2.方法名,成員變數名,區域性變數名,引數名統一用lowercamelcase駝峰標識 3.常量全部大寫用下劃線隔開,並且力求語意完整,不論多長,4.boolean型別的常量不要加是字首,否則容易引起框架異常,5.為了 自解釋...