每天进步一点点:SQL的注释

最近O哥奋发图强每天都在努力学习,比如说写点Python程序,又比如说写点PHP代码,有时候也用SQL来做一些数据分析,等等等等。

image.png
(图源 :pixabay)

虽然忙忙碌碌把自己搞得晕头转向也没啥成果产生,但还是乐此不疲。不由得曾经一个前上司说的一句话:生命在于折腾

确实如此呀,模仿那句经典的我思故我在,咱也整上一句我折腾故我在,哪天真的彻底不折腾了,那一定是嘎了。话说,这句会被载入史册不?

说到用SQL做数据分析,O哥写了好多条好大坨(咦,为什么要用这个量词呢?好像不太文雅呀😳)极其复杂的SQL查询。

然后O哥就发现,要在好大坨的极其复杂的SQL查询上做一些修改让它完成不同功能,是一件极其令人抓狂的事情,因为改来改去,把SQL弄得乱七八糟,更加复杂了。

于是O哥想了一个极傻的方法,那就是每实现一个功能,备份一条大坨SQL,就导致LINQPad中的SQL查询越来越多,找起来越来越复杂。

让O哥想一下,以前有没有遇到过类似问题呢?又是怎么解决的呢?抓耳挠腮想了半天,发现还真没遇到过。

以前我都是在程序中使用SQL,就是用来做最最最基本、最最简单的查询,然后再又程序来进行数据加工,得到我想要的数据,所以根本就谈不上复杂,也不存在把自己搞迷糊的情况。

而现在的情况是O哥总想着让SQL自己就是一个程序,把所有能做的事情都做了,不用再额外使用程序对数据进行处理加工了,这样当然就弄得极其复杂了。

习惯了这样操作而且发现这样操作大多时候可以满足我的需求之后,再也不想用以前的方法了。那如何破解当前的窘境呢?

以前写程序的时候会根据功能或者逻辑定义多个文件,还会选择把常用的逻辑包装成函数(或者模块之类的),但是在SQL查询中这样弄无疑会让原本简单的事情更加复杂,而且我总担心会不会影响性能?

在研究半天各种高级功能晕头转向之后,我突然想到何不使用注释呢?如果针对不同的功能使用注释进行相应的开关,不就搞定了嘛?

注释大法是我以前在各种程序打开关闭不同功能时常用的方法,只是以往从来没有在SQL中这样用过(简单的SQL也根本不需要这样用),倒是犯了灯下黑的错误呢。

SQL注释分单行和多行注释,语法分别是单行注释用--多行注释用/* ... */,当然也可以不嫌麻烦用单行注释来逐行注释。

单行注释的例子(以及逐行注释):

-- SELECT * FROM Users
-- WHERE Age > 18
-- ORDER BY Name

多行注释的例子:

/*
注释的第一行
注释的第二行
注释的第三行
*/
SELECT * FROM Users

是不是很简单?

让人有些头疼的是,不同语言,单行多行注释更有各的方法,由于经常摆弄不同语言,总犯把注释用错的低级错误。所以我整理出来一个简单的表格,这样以后就不怕弄错了。

注释类型SQLC 语言PHPPython
单行注释-- 注释内容// 注释内容// 注释内容# 注释内容
多行注释/* 注释内容 *//* 注释内容 *//* 注释内容 */''' 注释内容 '''

补充一下,PHP单行注释也支持# 注释内容,但是这样并不常用。PHP的多行注释不但支持''' 注释内容 '''也支持 """ 注释内容 """

还有就是这些语言中都不支持多行注释/* ... */的嵌套使用,会导致语法错误,也要注意。在C语言和C++中我以前还时常用宏定义来开关某段代码,也是非常方便的。

哎,又扯远了,不多扯了,继续折腾去喽。

Sort:  

勤奋的o哥 学习

哈哈,谢谢夸奖

我感觉很多时候就是要不停的折腾,我一个朋友最近这些年一直折腾房子,赚了几百万!我们按兵不动,啥也没捞着,哈哈哈,不过赶着好时候,有时候也靠运气,因为最近一套他亏了一百多万!O哥在折腾的过程中说不定有很多新的发现,以此获得个诺贝尔或者啥奖项呢!

啊,这些年折腾房子还能赚到钱,那可是太厉害了

对,第一套买的时候才五千多,那个时候时间早,当时南京不发达的河西,后面成富人区了,最后涨到六万多卖的,换了一套又卖了。不过新的一套江北的亏了一百多万!总体是赚的

已经是很厉害了,第一套5000多一平,这个差价都十几倍了。。。肯定是赚的。。

作家李娟,这真是

一坨巨大的赞美啊~

哈哈这个词大概来源于此吧!用在O哥这里不恰当呀!
小影美女,你的沙发被我占了,sorry了~

还沙发呢,板凳都没了

对,只能坐地板上撒野了,哈哈哈。

地板上只能瑜伽垫练瑜伽了😜

我今天葡萄酒喝晕了,找不到沙发了,现在是晕在沙发上,哈哈哈哈哈。

哈哈哈,难怪不来抢沙发了😜

优秀的O哥,老天奶啊,赶紧也多给我一点智慧,让我和O哥一样叱咤风云。。

O哥,好厉害👍,我看到代码,脑袋都大😄

这么优秀,还这么努力,可以带带我这种蠢货么

哈哈,我也是个菜鸟
谈不上带不带,一直在和大家一起玩呀

坚持学习 真的很棒

👍🏻👍🏻

会写代码的人脑袋一般都很聪明,并且数学都不差,我儿子也在学python,还比较基础的那种,我要让他膜拜一下O哥