谈谈SQL编码规范
有不少搞数据的同学自嘲为SQL Boy/Girl,而这也恰恰说明了使用SQL进行各种数据处理/分析在日常的工作中比重比较大,那么养成良好的SQL书写习惯也就成了一个比较重要的事情(基本功)。
写SQL和写常规的编程语言代码其实是一样的,得到正确的结果当然是必须的,但是可阅读性也是比较重要的,因为1) 对比数据口径是比较常见的事情 2) 代码review并没有完整的测试用例等,往往更多得是看逻辑及性能,数据质量校验可能没有那么周全。
风格保持一致
Hive SQL中有很多的等价写法,也不能直接就说必须这么写、不能那么写,但是我觉得自己保持一致的风格还是必须的。
- 关键词大小写保持一致
- 字符串统一用单引号或双引号
- 换行/缩进:使用格式化工具即可
- 查询字段是否加别名as
- 关联表顺序命名,比如t0 left join t1 left join t2… 或 a left join b left join c
逻辑简单干练
- 是否使用full outer join:如非必要不建议使用,看起来非常费劲思路来回跳
- 多次重复出现的逻辑可以用with语句重命名
行业相关资料
评论系统未开启,无法评论!