SQL Server数据库连接查询的种类及其应用
2009-01-08 10:20:04 来源:WEB开发网左连接的结果集包括LEFT OUTER子句中指定的左表的所有行,而不仅仅是联接列所匹配的行。如果左表的某行在右表中没有匹配行,则在相关联的结果集行中右表的所有选择列表列均为空值(Null)。
我们看对应的SQL语句:
Select Student.StudentName,Student.StudentAge,BorrowBook.BorrowBookName,BorrowBook.BorrowBookPublish
From Student
Left JOIN BorrowBook
On Student.StudentID = BorrowBook.StudentID
运行的结果如下:
StudentName StudentAge BorrowBookName BorrowBookPublish
---------------------------------------------------------------------------------
张三 25 马克思主义政治经济学 电子工业出版社
李四 26 毛泽东思想概论 高等教育出版社
王五 27 邓小平理论 人民邮电出版社
赵六 28 大学生思想道德修养 中国铁道出版社
无名氏 27 NULL NULL
(所影响的行数为 5 行)
可以看到的是,它查询的结果是以左表Student为主,Student对应的StudentID在右表BorrowBook如果不存在的话,就会用NULL值来代替。
2) 右连接:Right Join 或 Right Outer Join
右连接和左连接相反,它将返回右表的所有行。如果右表的某行在左表中没有匹配行,则将为左表返回空值(Null)。
我们看对应的SQL语句
Select Student.StudentName,Student.StudentAge,BorrowBook.BorrowBookName,BorrowBook.BorrowBookPublish
From Student
Right JOIN BorrowBook
On Student.StudentID = BorrowBook.StudentID
运行的结果如下:
StudentName StudentAge BorrowBookName BorrowBookPublish
----------------------------------------------------------------------------------------------------------------------
张三 25 马克思主义政治经济学 电子工业出版社
李四 26 毛泽东思想概论 高等教育出版社
王五 27 邓小平理论 人民邮电出版社
赵六 28 大学生思想道德修养 中国铁道出版社
NULL NULL C语言程序设计 高等教育出版社
- ››sql server自动生成批量执行SQL脚本的批处理
- ››sql server 2008亿万数据性能优化
- ››SQL Server 2008清空数据库日志方法
- ››sqlserver安装和简单的使用
- ››SQL Sever 2008 R2 数据库管理
- ››SQL SERVER无法安装成功,sqlstp.log文件提示[未发...
- ››Sql Server中通过父记录查找出所有关联的子记录
- ››SqlServer触发器、存储过程和函数
- ››SQL Server 中的事务(含义,属性,管理)
- ››Sqlite数据库插入和读取图片数据
- ››Sql server 2005拒绝了对对象 'xx表' (数...
- ››Sql server 2005拒绝了对对象 'xx表' (数...
更多精彩
赞助商链接