[菜鸟SQL问题]LEFT JOIN 的作用?

wa1ker1ee 2003-11-27 01:53:28
请高手详细说明LEFT JOIN的作用,并给出数个简单的实用的例子。
顺便推荐一下有什么好的学习SQL的书。

无论如何,谢谢在前:)
...全文
354 12 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhaowo 2003-11-27
  • 打赏
  • 举报
回复
说实话 写ASP,sql 3年多了,就没用过这个LEFT JOIN ....
xmanvictor 2003-11-27
  • 打赏
  • 举报
回复
ding
wang7655 2003-11-27
  • 打赏
  • 举报
回复
你多看看SQL SERVER帮助就知道了

其实这些都应该是基本的SQL语句啊!

它是放在SELECT语句里的
wang7655 2003-11-27
  • 打赏
  • 举报
回复
你多看看SQL SERVER帮助就知道了

其实这些都应该是基本的SQL语句啊!

它是放在SELECT语句里的
nik_Amis 2003-11-27
  • 打赏
  • 举报
回复
up
wa1ker1ee 2003-11-27
  • 打赏
  • 举报
回复
对了 能再举些实用的例子吗?再次感谢:)
wa1ker1ee 2003-11-27
  • 打赏
  • 举报
回复
严重感谢中……
现在去上学 回来结:)
monkeys 2003-11-27
  • 打赏
  • 举报
回复
建议参看帮助
bubuy 2003-11-27
  • 打赏
  • 举报
回复
我再给你个列子:
有两表:a,b
其中a表中的字段为a_id,b中的字段为b_id,b_no;记录如下:
a: b:
a_id b_id b_no
--- -----
2 2 3
3 3 5
5 5 6
执行语句:select a.a_id,b.b_no from a left join b on (a.a_id=b.b_id and b.b_id>5)

效果如下:

a_id b_no
--------
5 6
2 null
3 null

bubuy 2003-11-27
  • 打赏
  • 举报
回复
呵呵。很久没回答问题了,我也来说说:
left join 其实就是把你要join的表分为主表和附表
主表的字段不论符不符合都会显示出来,而附表中
符合的字段将显示记录,不符合的将以NULL显示
kanshangren 2003-11-27
  • 打赏
  • 举报
回复
还有个最常用的是INNER JOIN
Jaron 2003-11-27
  • 打赏
  • 举报
回复
mk:@MSITStore:C:\Program%20Files\Microsoft%20SQL%20Server\80\Tools\Books\acdata.chm::/ac_8_qd_09_0zqr.htm

在SQL联机手册上,查找索引 Left Outer Join 运算符,有示例

使用外联接
仅当至少有一个同属于两表的行符合联接条件时,内联接才返回行。内联接消除与另一个表中的任何行不匹配的行。而外联接会返回 FROM 子句中提到的至少一个表或视图的所有行,只要这些行符合任何 WHERE 或 HAVING 搜索条件。将检索通过左向外联接引用的左表的所有行,以及通过右向外联接引用的右表的所有行。完整外部联接中两个表的所有行都将返回。

Microsoft® SQL Server™ 2000 对在 FROM 子句中指定的外联接使用以下 SQL-92 关键字:

LEFT OUTER JOIN 或 LEFT JOIN


RIGHT OUTER JOIN 或 RIGHT JOIN


FULL OUTER JOIN 或 FULL JOIN
SQL Server 支持 SQL-92 外联接语法,以及在 WHERE 子句中使用 *= 和 =* 运算符指定外联接的旧式语法。由于 SQL-92 语法不容易产生歧义,而旧式 Transact-SQL 外联接有时会产生歧义,因此建议使用 SQL-92 语法。

使用左向外联接
假设在 city 列上联接 authors 表和 publishers 表。结果只显示在出版商所在城市居住的作者(本例中为 Abraham Bennet 和 Cheryl Carson)。

若要在结果中包括所有的作者,而不管出版商是否住在同一个城市,请使用 SQL-92 左向外联接。下面是 Transact-SQL 左向外联接的查询和结果:

USE pubs
SELECT a.au_fname, a.au_lname, p.pub_name
FROM authors a LEFT OUTER JOIN publishers p
ON a.city = p.city
ORDER BY p.pub_name ASC, a.au_lname ASC, a.au_fname ASC

28,409

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧