对于程序工作者来说,代码的阅读必不可少,好的代码让人读起来一目了然、神清气爽,做代码调试也可以很开的捋顺逻辑定位问题,但是如果遇到一些可读性较差,毫无规矩可言的代码,那真的比吃了翔都难受啊,如果再让你在这个基础上做点东西或者持续维护这些代码,真的能让人憋屈死,所以代码的书写必须条理清晰,遵循规矩,虽说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. 1(1).有监督 VS 无监督

    对比一 : 有标签 vs 无标签 有监督机器学习又被称为“有老师的学习”,所谓的老师就是标签.有监督的过程为先通过已知的训练样本(如已知输入和对应的输出)来训练,从而得到一个最优模型,再将这个模型应用 ...

  2. pycharm连接远程python的开发环境

    一.准备工作 1.远程主机配置python的开发环境(pyenv) 2.本地windowsp安装pycharm 二.配置pycharm连接 配置运行环境:

  3. 【Springboot】spring-boot-starter-redis包报错 :unknown

    springboot集成redis时,引入spring-boot-starter-redis包报错,maven找不到这个资源.如下图: 我的项目中,spring boot是 用的2.0.4版本.spr ...

  4. 六、SQL优化

    SQL优化 优化策略 一.尽量全值匹配 当建立了索引列后,尽量在where条件中使用所有的索引. CREATE TABLE `staffs`( id int primary key auto_incr ...

  5. 为什么 JavaScript 中 0.1+0.2 不等于 0.3 ?

    本文首发于 vivo互联网技术 微信公众号 链接:https://mp.weixin.qq.com/s/2kea7-jACCJmSYBQAwXyIg作者:刘洋 在 js 中进行数学的运算时,会出现0. ...

  6. 【Java基础】正则表达式

    目录 正则表达式 什么正则表达式 普通字符 预定义字符 特殊字符 数量限定字符 定位字符 选择符和分组 反向引用 预搜索 运算符的优先级 常用正则 附录 正则表达式 本文的大部分内容转载自正则表达式从 ...

  7. SpringBoot无法访问webapp目录下的文件

    springboot version:2.1.9-RELEASE 解决方案: 在pom中添加此段 完美解决,代码的作用是让src/main/webapp在编译的时候在resoureces路径下也生成w ...

  8. (六十一)c#Winform自定义控件-信号灯(工业)-HZHControls

    官网 http://www.hzhcontrols.com 前提 入行已经7,8年了,一直想做一套漂亮点的自定义控件,于是就有了本系列文章. GitHub:https://github.com/kww ...

  9. C#中实现文件重命名的方式

    场景 在C#中如果是删除文件的话可以直接使用 if (System.IO.File.Exists(fileName)) { System.IO.File.Delete(fileName); } 但是如 ...

  10. Create a Solution using the Wizard 使用向导创建解决方案

    In this lesson, you will learn how to create a new XAF solution. You will also be able to run the ge ...