对于程序工作者来说,代码的阅读必不可少,好的代码让人读起来一目了然、神清气爽,做代码调试也可以很开的捋顺逻辑定位问题,但是如果遇到一些可读性较差,毫无规矩可言的代码,那真的比吃了翔都难受啊,如果再让你在这个基础上做点东西或者持续维护这些代码,真的能让人憋屈死,所以代码的书写必须条理清晰,遵循规矩,虽说SQL 的代码语法相比其他的java、python 等高级语言要差了几个档,但是对于一门数据查询语言来说,语法简答并不意味着没有结构可言,接下来我们共同学习一下SQL 的代码规范。

我们分别从代码的注释、主体结构和最终的脚本命名三个方面讨论SQL 的规范:

  • 代码的注释:

1、代码块的注释使用 " /* .... */“
   每个SQL 查询代码的开始段,必须对整个代码进行简单的说明,说明内容包括:书写人、业务内容、书写时间、注意事项等;
2、不换行的简单注释,在注释文字前用" -- “
  1)针对字段的解释,放到这个字段后面;
    EG:count(distinct salesNo) as CustNum  -- 统计是客流量
  2)针对行的解释,一般会单独取一行,避免某行代码过长;
    EG :-- 2017年7月2号计算每个会员购买金额占总体金额的比

  •  主体结构规范:

    1、查询相关关键字单独再起一行;select /from /where/group by /having/order by;

    2、select 之后的字段 之间使用 ‘,’分隔,逗号统一放到各字段的前面或者后面;

    3、select 的相关字段,一般是缩进4个空格或者6个空格;

    4、代码的分号一般放到代码的结尾;

    5、对于子查询嵌套使用规则:

        1)子查询语句使用()进行包裹,子查询语句单独另起一行;

        2)同一级别的子句内部要对齐;

    6、表别名命名规则:

        1)表一定要有别名例如:单个字母,字母加数字;

        2)多个表(t特别是有子查询嵌套查询)在关联的时候有相应临时表命名有顺序,例如:t1,t2,t3;A,B,C;

  • 脚本命名

    1)代码开发完成后,及时进行代码保存;

    2)文件格式:.sql 结尾脚本命名;

    3)名字缩写+内容+日期;

Sql 代码规范说明的更多相关文章

  1. SQL代码规范

    1.  建表规约 1)   表中字段名称 a)    表达是否概念的字段,必须使用is_xxx的方式命名,数据类型是bit b)    小数类型为decimal,禁止使用float和double. 说 ...

  2. SQL开发规范

    一.SQL代码规范: 1.头部 --************************************************************************** --所属主题: ...

  3. Java代码规范

    Java代码规范 本Java代码规范以SUN的标准Java代码规范为基础,为适应我们公司的实际需要,可能会做一些修改.本文档中没有说明的地方,请参看SUN Java标准代码规范.如果两边有冲突,以SU ...

  4. 代码规范和常用的js插件以及测试工具

    1.代码规范 .model层 1.1.1database file_proerty 1.1.2java fileProperty. 1.2.字段要有空指针 1.3.不创建爱数据库外键约束 1.4.已知 ...

  5. Android开发代码规范(转)

    Android开发代码规范 1.命名基本原则    在面向对象编程中,对于类,对象,方法,变量等方面的命名是非常有技巧的.比如,大小写的区分,使用不同字母开头等等.但究其本,追其源,在为一个资源其名称 ...

  6. 漫谈PHP代码规范

    前言 虽说PHP是世界上最好的语言,但是写出来的PHP代码却往往不是最美观的.究其原因,可能正式因为PHP简单易上手,适合快速迭代的特性,导致了我们沉浸在迅速完成需求迭代的窃喜中,却忘记了规范性.忽略 ...

  7. 常用 SQL Server 规范集锦

    常用 SQL Server 规范集锦 常见的字段类型选择   1.字符类型建议采用varchar/nvarchar数据类型 2.金额货币建议采用money数据类型 3.科学计数建议采用numeric数 ...

  8. JavaScript 代码规范

    所有的 JavaScript 项目适用同一种规范. JavaScript 代码规范 代码规范通常包括以下几个方面: 变量和函数的命名规则 空格,缩进,注释的使用规则. 其他常用规范-- 规范的代码可以 ...

  9. 【Android 应用开发】 Android 相关代码规范 更新中 ...

    . 简介 : Android 常用的代码结构, 包括包的规范, 测试用例规范, 数据库模块常用编写规范; 参考 : 之前写的一篇博客 [Android 应用开发] Application 使用分析 ; ...

随机推荐

  1. 工具推荐--刷LeetCode的神器

    本文首发于微信公众号:[坂本先生],文章地址为: https://mp.weixin.qq.com/s/vHv5hO8nils_g2VSKwu1Cg如有转载请标明出处 今天给大家安利一款快速刷Leet ...

  2. js全局属性/函数

    全局函数 eval () isFinite ()             检查某个值是否为有穷大的数 isNaN () 检查某个值是否是数字                     返回true或fa ...

  3. TKinter当Label绑定bind事件时传参方法

    记录下tkinter的 当在label绑定bind事件时,遇到需要传参时的解决方法(因为有event存在 所以不能直接传参) https://www.cnblogs.com/liyuanhong/ar ...

  4. [考试反思]1111csp-s模拟测试110:三思

    题目名是为了照应3天的倒计时(我才不会说是因为我考场又摸鱼了) 在OJ上得到了295的好成绩,但是本地评测没有O2掉了10分. 总体来说还可以.T1全场切,T2半场切,T3纯暴力不卡常都有95... ...

  5. ReactNative: 使用导航栏组件-NavigatorIOS组件和Navigator组件

    一.简言 在软件开发中,不论是Web还是App,它们的应用程序都是由很多的功能视图组成的.对于这些组合的视图,如何实现页面间平滑地过渡,应用都有统一的一套跳转机制,这个功能就是路由或者叫导航.应用程序 ...

  6. [C++]Game模板-正面视角

    前言 本来是想打一个小游戏的-- 可是打到一半思路断了-- 只打出了模板--先把模板拿出来放着 Code //head #include <iostream> #include <c ...

  7. 随机的标识符GUID

    Guid guid = Guid.NewGuid();Console.WriteLine(guid.ToString());

  8. ubuntu 中安装jenkins,基于docker运行jenkins

     本文是在ubuntu环境下安装jenkins,jenkins运行在docker容器中,至于docker如何安装,本文不再描述,大家可以上网查询下,如何安装docker,下面先放上一个使用jenkin ...

  9. smobiler自适应不同手机分辨率

    在smobiler中可以通过相对布局或者绝对布局实现自适应不同手机分辨率. 例如实现下图中的布局,图中的布局实际可以分成3个部分,部分1可以使用Title控件,部分2可以使用Panel(在Panel中 ...

  10. 剑指offer 26:复杂链表的复制

    题目描述 输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head.(注意,输出结果中请不要返回参数中的节点引用,否 ...