手机
当前位置:查字典教程网 >编程开发 >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中的外联结用法】相关文章:

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

SQL2005 自动备份的脚本

SQL Server 工作技巧

SQL Server 临时表的删除

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

SQL Server2005异地自动备份方法

SQL Server 数据库清除日志的方法

SQL Server 登录连接失败

SqlServer 2005的排名函数使用小结

sql server 2005中使用with实现递归的方法

精品推荐
分类导航