欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2022-06-16 13:26:50
连接函数——inner join 在至少两个以上的表中存在至少一个匹配时,inner join 关键字返回行。 具体的使用语法 select 字段名 from 表名a inn...

连接函数——inner join

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

具体的使用语法

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

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

例子

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

表a

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

表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='信息部'
查询结果如下

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

substring(expression,start, length)

这个字段可能大部分人都用过,在javajavascript,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' //作为查询条件

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

union 合并select查询集

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

select * from department union  select * from department1

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

select * from department union  all select * from department1

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

总结

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