【sql server】存储过程扩展

来源:互联网 发布:妇科专家在线网络咨询 编辑:程序博客网 时间:2024/05/18 00:25

前言

        在第二次机房收费系统的总结中,我总结了一遍存储过程,这次看牛腩又发现了一点新东西,总结出来分享给大家。

存储过程

表连接

        我们在牛腩中只涉及到了内连接和左外连接,其他内容只供了解。

内连接

内连接查询操作列出与连接条件匹配的数据行,它使用比较运算符比较被连接列的列值。内连接又分三种,等值、不等、自然连接,其中,自然连接中没有重复行。

模版:select * from 表名 inner join 表名 on 连接条件

外连接

内连接时,返回查询结果集合中的仅是符合查询条件( WHERE 搜索条件或 HAVING 条件)和连接条件的行。而采用外连接时,它返回到查询结果集合中的不仅包含符合连接条件的行,而且还包括左表(左外连接时)、右表(右外连接时)或两个边接表(全外连接)中的所有数据行。 如果数据为空的用null代替。
模版:select * from 表名 left/right/full join 表名 on 连接条件

交叉连接

交叉连接不带WHERE 子句,它返回被连接的两个表所有数据行的笛卡尔积,返回到结果集合中的数据行数等于第一个表中符合查询条件的数据行数乘以第二个表中符合查询条件的数据行数。 

排序

order by 依据内容 desc(按依据内容降序排列)

默认为升序,加上desc为降序。

模糊查询

如select * from table where CardNo=‘1’是精确查询

那么,select * from table where CardNo like ‘%’ 1 ‘%’则为模糊查询,表现为查找所有卡号中带1的卡号。(貌似这个在学生管理系统就接触过,忘记了,总结一下。)

分组

select 字段 from 表名 连接 表名 on 连接条件  group by 最终字段

这个最终字段就是最终出来的一张临时表中的字段,这些字段出自前面两个表select出来的所有字段。

总结

        这些东西我们在数据库的自考书中都学过,但是现在学起来还是跟新东西似的,这种感觉很不爽,怎么解决呢?多复习就好啦,不然呢?

0 0