学习SQL的过程有进步的话还是一件很美妙的事情的

在第一家公司虽然只呆了两年,但是感觉是我进步最快的两年。那时候工作和生活都挺充实的,每天都有一点点的收获和付出,其中最大的收获莫过于掌握一些核心技能。

在这两年里,工作上有不懂的基本上都是自己先想办法去解决,然后才是问度娘,最后才是找我的上司。因为是新手的缘故吧,只要有人能告诉我一点技巧性的东西,我都会用SQL语句记录下来,久而久之到我离职的时候,竟然有好几百个SQL脚本了。我想这应该算得上是一个好习惯!

另外一个就是从度娘上也找到了不少有用的东西,那时候每天都是给业务部门提数据,随着对业务的不断了解,我的上司也给了我一些新的任务。好些东西工作中虽然都用过,但是一些流程性的东西如果用平时的SQL去实现还是感觉有点费劲,所以就找度娘看看有没有什么好的方法。那时候找到的一个参数化的方法,感觉效率还不错。大致的语句如下:

DECLARE @DEPTID VARCHAR2(20)
DECLARE @DEPTNAME VARCHAR2(50)
SET @DEPTID='170101'
--用SET方法给变量赋值 , 此方法一次只能给一个变量赋值
SELECT @DEPTNAME=DEPTNAME FROM DEPT WHERE DEPTID=@DEPTID
--查询部门ID为'170101'的部门名称赋值给@DEPTNAME变量 ,此方法能一次多个变量赋值

这样在查询的时候就只需要将@DEPTID的值传进去就可以完成获取该参数对应的@DEPTNAME,省掉了许多重复输入参数的工作。当然这只是一个简单的例子,只能解决一些简单的问题。一些复杂的写法就要用到游标和循环之类的啦,这里暂时不探讨了。所以多问问度娘还是有好处滴!这里还要说一下问度娘的方法,有些时候之所以我们找不到符合自己问题的网页,很大部分原因是因为我们输入的关键字的原因。这个我也是问多了发现的一个小技巧,平时遇到的一些问题你得用最短的语句来描述他们。大家可以慢慢去体会一下。

至于我的上司,我之前说过他是我非常感激的一个人,因为他真的教会了很多东西,不只是技术问题。

在给各个部门提数据的时候难免会碰到一些问题,经常会遇到说我提的数据有问题的时候。开始的时候我总会觉得是别人的需求没给清楚或者他们没理解我数据的意思,总之就不是我的问题,为此得罪了一些业务系的同事。投诉到我上司那里被好好教育了一番,为什么不说批评?因为我的上司更多的是从业务系的同事的角度出发,我们作为提供数据的人,首先肯定是得弄清楚需求,不管别人的需求怎么样,你得搞清楚再去做,哪怕有一点里觉得模棱两可这数据都有可能出现问题;其次就是数据出现问题,首先应该仔细检查自己的查询逻辑是否正确。如果这些都没问题,那你也要听业务系的同事觉得哪里有问题才是。而不是自己说自己需求明确,逻辑正确就不管事了。说到底就是要冷静的处理同事的问题,帮他们解决才是正道!

        上司的一席话,让我醍醐灌顶,真的。有些领导可能就会直接批评你几句,但是就是不说问题原因和解决之道(当然,这些并不是他们的义务),只是说有个人告诉你该怎么做的时候你应该感激他,让你少走了那么多弯路。希望我的一些经历能帮助到大家!

SQL Server变量杂谈的更多相关文章

  1. SQL Server变量赋值的方法

    SQL Server变量赋值我们经常会遇到,下面就为您介绍SQL Server变量赋值的两种方法,希望可以对您学习SQL Server变量赋值有所帮助. SQL Server中对已经定义的SQL Se ...

  2. SQL SERVER 变量的使用和样例

    定义和使用局部变量:说明: 局部变量是用户可自定义的变量. 作用范围仅在程序内部. 局部变量的名称是用户自定义的,命名的局部变量名要符合SQL Server 2000标识符命名规则=>以@开 在 ...

  3. sql server 变量 字符串拼接

    参考:SQL server中null+字符串,isnull以及把查询结果赋给一个字符变量组成另一个查询语句  1.开始定义的字符串都为null.例如:declare @sql,那么@sql就是null ...

  4. 数据库开发基础-SQl Server 变量、运算符、if、while

    变量: SQL语言也跟其他编程语言一样,拥有变量.分支.循环等控制语句. 在SQL语言里面把变量分为局部变量和全局变量,全局变量又称系统变量. 局部变量: 使用declare关键字给变量声明,语法非常 ...

  5. SQL server 变量、运算符

    一.三个表的练习 表一:学生表 student学号:code int (主键)从1开始姓名:name varchar(50)性别:sex char(10)班级:banji char(10)语文教师编号 ...

  6. (4.24)sql server变量中set与select的区别

    SET vs SELECT是SQL极客之间讨论的常见话题,也是最受欢迎的面试问题之一.SET用于为变量赋值,SELECT用于赋值或从变量/ table / view等中选择值. 让我们看看在不同场景中 ...

  7. SQL server 变量if,while,存储过程

    一.变量 1.if循环 2. 3.while循环 declare @ss int set @ss =2while @ss<10begin print 'Hello' set @ss=@ss+1e ...

  8. SQL Server 变量定义

    declare @id intdeclare @name char(10) --注意:char(10)为10位,要是位数小了会让数据出错set @id=1 set @name='sssss'selec ...

  9. sql server 变量和select 赋值的联合使用demo

    ) ) select @cltcode=cltcode,@brand=brand from prosamplehd CREATE table #t ( cltcode ), brand ) ) INS ...

随机推荐

  1. DataFrame概念与创建

    一 概念 Pandas是一个开源的Python数据分析库.Pandas把结构化数据分为了三类: Series,1维序列,可视作为没有column名的.只有一个column的DataFrame: Dat ...

  2. RabbitMQ镜像模式双节点部署时故障转移过程中队列中消息的状态

    场景 现有节点Node1和Node2,建立Exchange:yu.exchange,创建队列yu1.queue镜像队列master位于Node1,yu2.queue镜像队列位于Node2,使用topi ...

  3. 记2019年目标之一没有996的大数据分析BI实战历程

    本文略长,阅读大约需要10分钟. 懵懵懂懂的学习了python,然后一发不可收拾的爱上了python大数据分析,慢慢的走进了大数据的学堂,学习如何大数据挖掘,大数据分析,到BI系统建设使用. 大数据的 ...

  4. 前端基础-BOM和DOM的介绍

    阅读目录 BOM和DOM的简述 DOM详细操作 事件 一.BOM和DOM的简述 到目前为止,我们已经学过了JavaScript的一些简单的语法.但是这些简单的语法,并没有和浏览器有任何交互. 也就是我 ...

  5. Mybatis 配置文件

    1.核心配置文件 sqlMapConfig.xml <?xml version="1.0" encoding="UTF-8" ?> <!DOC ...

  6. Promise 的应用

    Promise 有三种状态,进行中(pending),已成功(fulfilled),已失败(rejected): 一旦状态改变,就不会再变,任何时候都可以得到这个结果.Promise对象的状态改变,只 ...

  7. UITextView 光标定位

    在使用UITextView的时候, 如何在光标的位置插入字符 或者 图片? 以下Demo为你解答: 应用背景:键盘自定义emoji表情 #pragma mark - KVO - (void)obser ...

  8. 使用mock.js进行数据模拟

    mock.js的文档真的是无力吐槽,只说明API怎么使用,完全不说明mock.js这个工具怎么用到项目里面,最有意思的是google的大部分文章复制官网的API,不管是react还是Vue都是下面的流 ...

  9. phporjquery生成二维码

    一.php生成二维码 下载文章末尾链接中phpcode文件 include "./phpqrcode/qrlib.php"; //QRcode::png('http://www.b ...

  10. PHP的strtotime()函数2038年bug问题

    最近在开发一个订单查询模块的时候,想当然的写了个2099年的日期,结果PHP返回了空值,肯定是发生溢出错误了,搜索了网上,发现下面这篇文章,但是我的问题依然没有解决,要怎么得到2038年以后的时间戳呢 ...