對於程序工做者來講,代碼的閱讀必不可少,好的代碼讓人讀起來一目瞭然、神清氣爽,作代碼調試也能夠很開的捋順邏輯定位問題,可是若是遇到一些可讀性較差,毫無規矩可言的代碼,那真的比吃了翔都難受啊,若是再讓你在這個基礎上作點東西或者持續維護這些代碼,真的能讓人憋屈死,因此代碼的書寫必須條理清晰,遵循規矩,雖然說SQL 的代碼語法相比其餘的java、python 等高級語言要差了幾個檔,可是對於一門數據查詢語言來講,語法簡答並不意味着沒有結構可言,接下來咱們共同窗習一下SQL 的代碼規範。java
咱們分別從代碼的註釋、主體結構和最終的腳本命名三個方面討論SQL 的規範:python
一、代碼塊的註釋使用 " /* .... */「
每一個SQL 查詢代碼的開始段,必須對整個代碼進行簡單的說明,說明內容包括:書寫人、業務內容、書寫時間、注意事項等;
二、不換行的簡單註釋,在註釋文字前用" -- 「
1)針對字段的解釋,放到這個字段後面;
EG:count(distinct salesNo) as CustNum -- 統計是客流量
2)針對行的解釋,通常會單獨取一行,避免某行代碼過長;
EG :-- 2017年7月2號計算每一個會員購買金額佔整體金額的比sql
一、查詢相關關鍵字單獨再起一行;select /from /where/group by /having/order by;學習
二、select 以後的字段 之間使用 ‘,’分隔,逗號統一放到各字段的前面或者後面; 調試
三、select 的相關字段,通常是縮進4個空格或者6個空格;代碼規範
四、代碼的分號通常放到代碼的結尾;開發
五、對於子查詢嵌套使用規則:基礎
1)子查詢語句使用()進行包裹,子查詢語句單獨另起一行;select
2)同一級別的子句內部要對齊;語法
六、表別名命名規則:
1)表必定要有別名例如:單個字母,字母加數字;
2)多個表(t特別是有子查詢嵌套查詢)在關聯的時候有相應臨時表命名有順序,例如:t1,t2,t3;A,B,C;
1)代碼開發完成後,及時進行代碼保存;
2)文件格式:.sql 結尾腳本命名;
3)名字縮寫+內容+日期;