【SQLServer进阶】——常用的数据库函数

连接函数——inner join

在至少两个以上的表中存在至少一个匹配时,inner join 关键字返回行。

具体的使用语法

select 字段名 from 表名a inner join 表名b on a.字段=b.字段

查出来数据条数是inner join 前表*后表,所以在使用inner join时判断自己要查询的内容。

例子

表a

表b

select * from department b inner join department1 a on a.deptno = b.deptno where a.deptname='信息部'
select * from department a inner join department1 b on a.deptno = b.deptno where a.deptname='信息部'

查询结果如下

substring(expression,start, length)

这个字段可能大部分人都用过,在java,javascript,c#中都有这个函数,就是用来截取字段的。expression 查询的字段,start 开始的字段, length 截取的字段长度。

在sql server中substring中截取了字段,其中substring可以放到查询字段的位置,也可以放到选择条件的位置。之前做项目的时候有一个助剂字段,其实就是就可以利用这个函数来截取前几位数,避免单独创建一个字段来读取。

select s.proofid 未截取,substring(s.proofid,5,16) 截取
from saleproof s //作为将要查询的内容
select s.proofid 未截取截取
from saleproof s where substring(s.proofid,5,16) ='2016092100000048' //作为查询条件

union 合并select查询集

union 内部的 select 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 select 语句中的列的顺序必须相同。

select * from department union  select * from department1

与union相差不多的时unionall无非是union 查询结果没有重复内容。

select * from department union  all select * from department1

总结

就是工作利用了一下的函数,觉得很好用啊,以前总是使用linq表达式之类,其实sql语句写的很少啊,真正工作才发现其实sql在工作中用的还是非常多,有很多好处也是程序语言无法替代,现在感觉真正利用好数据库,这个程序就离上线不远了。有时候也在反思为什么我们的项目总是那么难推上线,出来发现其实不大,就是花里胡哨的东西的太多了,基础内容的反倒不注重,才让我们离上线的边缘一次次远离吧。无论是什么,多么基础,好好学习,看到上,才能用的更好!

(0)
上一篇 2022年3月21日
下一篇 2022年3月21日

相关推荐