学习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. JNI由浅入深_5_基本类型应用

    1.基本类型应用 对于JNI处理基本类型还是比较简单的,下面是Java代码: <span style="font-size:14px;"> public native ...

  2. C++获取毫秒级时间戳

    #include<chrono>   auto timeNow = chrono::duration_cast<chrono::milliseconds>(chrono::sy ...

  3. #leetcode刷题之路19-删除链表的倒数第N个节点

    给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点.示例:给定一个链表: 1->2->3->4->5, 和 n = 2.当删除了倒数第二个节点后,链表变为 1-& ...

  4. VUE 跳转另一页面返回之前页面刷新,但数据依然存在

    在第一个页面填写数据后存入本地缓存: 再次跳转回来时判断是否填入数据,如果有数据,将缓存数据填写上.

  5. 用户从地址栏输入url,按下enter键后,直到页面加载完成的这个过程都发生了什么?

    流程大概描述一下: 用户将url输入后,服务器接受到请求,然后将这个请求进行处理,然后将处理后的结果返回给浏览器,浏览器将该结果以页面的形式呈现给用户. 详细描述: 1:用户将url(例如www.ba ...

  6. Sql主从同步服务

    主服务器A:192.168.1.102从服务器B:192.168.1.103 先关掉主服务器phpstudy,把数据库备份到从服务器 1.授权用户:在A服务器新建一个从账号锁定IP GRANT REP ...

  7. Microbit蓝芽配对

    Microbit蓝芽配对 (Bluetooth Pairing) Microbit 可以像手机或平板与其他蓝芽装置一样,一旦做完第一次配对完就可以使用”蓝芽服务” paired with the mi ...

  8. devise定义多个authentication_keys

    在你的model中加入 def self.find_for_database_authentication(warden_conditions) conditions = warden_conditi ...

  9. Go 跨域请求问题

    在使用go语言写测试服务的时候遇到了前端跨域请求问题,只需在go中加入 w.Header().Set("Access-Control-Allow-Origin", "*& ...

  10. Java基本修饰符

    java中的修饰符分为类修饰符,字段修饰符,方法修饰符.根据功能的不同,主要分为以下几种: *权限访问修饰符(可以用来修饰类.方法和字段) 适用范围<访问权限范围越小,安全性越高> 访问权 ...