手机
当前位置:查字典教程网 >编程开发 >mssql数据库 >SQL Server 2005中的外联结用法
SQL Server 2005中的外联结用法
摘要:SQLServer2005中的外联结用法一:有两个表:学生表,学生选课表,表中数据为:学生表:学生选课表:要查看所有学生的选课信息,标准的S...

SQL Server 2005中的外联结用法一:

有两个表:学生表,学生选课表,表中数据为:

学生表:

SQL Server 2005中的外联结用法1

学生选课表:

SQL Server 2005中的外联结用法2

要查看所有学生的选课信息,

标准的SQL语句,外联结语句为

use stu_course select L.sno,sname,ssex,sage,sdept,cno,grade from student L,sc where L.sno=sc.sno(*)

理论上的结果为:

SQL Server 2005中的外联结用法3

但是,在SQLServer2005中运行会出现错误,错误提示为:

消息 102,级别 15,状态 1,第 4 行

'*' 附近有语法错误。

在SQLServer2005中,相应的T-SQL语句应该为:

use stu_course select L.sno,sname,ssex,sage,sdept,cno,grade from student L left join sc on L.sno=sc.sno

运行结果为:

SQL Server 2005中的外联结用法4

同时,还可以在on后面再加上where限定条件:

use stu_course select L.sno,sname,ssex,sage,sdept,cno,grade from student L left join sc on L.sno=sc.sno where L.sno in(95001,95002,95003,95004)

这时,运行结果为:

SQL Server 2005中的外联结用法5

以上这个例子是左外联结查询,即:结果表中包含第一个表中所有满足条件的

记录,如果在第二个表中有满足联结条件的记录,则返回相应的值,否则返回NULL

SQLServer2005中的外联结查询用法(续):

有三个表:学生表,学生选课表,课程表,表中数据为:

学生表:

SQL Server 2005中的外联结用法6

学生选课表:

SQL Server 2005中的外联结用法7

课程表:

SQL Server 2005中的外联结用法8

左联结查询举例:

use stu_course select L.sno,sname,ssex,sage,sdept,cno,grade from student L left join sc on L.sno=sc.sno

结果为:

SQL Server 2005中的外联结用法9

右联结查询举例:

use stu_course select sno,course.cno,course.cname from sc right join course on sc.cno=course.cno

结果为:

SQL Server 2005中的外联结用法10

全外联结查询举例:

use stu_course select sno,course.cno,course.cname from sc full join course on sc.cno=course.cno

结果为:

SQL Server 2005中的外联结用法10

如果将这个全外联中的左右两个表交换顺序:

use stu_course select sno,course.cno,course.cname from course full join sc on sc.cno=course.cno

结果仍为:

SQL Server 2005中的外联结用法10

由以上例子可以看出:

对于左外联结,结果表中包含第一个表中所有满足条件的记录,如果在第二个表中有满足联结条件的记录,则返回相应的值,否则返回NULL;

对于右外联结,结果表中包含第二个表中所有满足条件的记录,如果在第一个表中有满足联结条件的记录,则返回相应的值,否则返回NULL;

对于全外联结,结果表中包含两个表中所有满足条件的记录,如果在其中一个表中有满足联结条件的记录,则返回相应的值,否则返回NULL;

【SQL Server 2005中的外联结用法】相关文章:

SQL Server 游标使用

SQL Server 2005 同步复制技术

SQL Server 2008商业智能详解

SQL Server 2005与sql 2000之间的数据转换方法

SQL Server 2005使用的网络协议

SqlServer2005 链接服务器用法

关于SQLServer2005的学习笔记 XML的处理

SQL Server 2005中更改sa的用户名的方法

SQL Server 表交叉显示及实现方法

SQL Server CROSS APPLY和OUTER APPLY的应用详解

精品推荐
分类导航