多语言展示
当前在线:1262今日阅读:179今日分享:36

SQL 查询判断连接的基础使用方法

这是我自己整理的PPT文档,复制出来分享给大家吧。都是一些SQL Server的概念题目前还正在学习中,等我学的差不多的时候,会分享更多资料。针对菜菜,大神绕道,写的不好,切勿嘲笑。1.case函数的使用a)case函数做等值判断i.case后面接了相应的表达式或者字段ii.then后面的类型必须一致iii.它不能做null值判断b)case函数判断范围i.case后面没有相应的表达式或者字段ii.then后面的数据类型需要一致,但是when后面的表达式并不要求是同一个字段iii.它可以做null值的判断2.子查询a)什么是子查询i.一个查询中包含了另外一个查询,被包含的就是子查询,包含的就是父查询b)子查询的分类i.相关子查询1.子查询中使用到了父查询中的字段ii.独立子查询1.它就是一个完整的独立可以运行的查询c)子查询返回多个结果时使用的关键字—条件i.如果子查询返回多行一列,那么就可以使用in关键字ii.但是如果做为条件的时候返回一行多列,那么报错d)子查询的几种使用方式i.做为条件1.做为条件时对子查询的要求:a)如果按在关系运算符后(> >= < <= = <> !=),要保证只返回一个值b)如果返回了多个值(多行一列),那么可以使用关键字in2.使用=进行判断a)单个返回值b)类型一致3.使用in进行判断ii.子查询做为结果集1.什么样的子查询可以做为结果集a)使用select2.子查询做结果集需要给别名3.实现分页a)Topb)Row_number()over(order by排序字段)iii.如何更快速的写子查询1.先写出查询框架,再填空3.表连接a)为什么需要表连接i.因为根据数据库设计原则很难将所有字段创建在一个表中ii.所以需要获取数据的时候有可能需要从多个表中去获取iii.这就是多表查询—实现表连接就是为了实现多表查询b)使用where实现多表查询i.From可以从多个表中取值ii.使用from。。where的方式一定要记得写where中的连接条件c)内连接i.表Inner join…表.on连接条件ii.可以获取建立关联字段值相等的记录d)左连接i.写在关键字前面的就是左表,写在后面的就是右表ii.表left join…表.on连接条件iii.在查询的时候以左表的记录做为参考,得到左表的所有记录,如果建立关联的字段在右表中没有记录,那么右表的字段值就会以null值替代e)右连接i.写在关键字前面的就是左表,写在后面的就是右表ii.表right join…表.on连接条件iii.在查询的时候以右表的记录做为参考,得到右表的所有记录,如果建立关联的字段在左表中没有记录,那么左表的字段值就会以null值替代f)交叉连接i.得到两个表乘积条记录:从一个表取出一条记录与另外表的每一条记录关联
推荐信息