sql server7中INNER JOIN有谁用过?具体怎么用给个例子?

wujinbao 2001-05-10 02:45:00
...全文
123 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
wujinbao 2001-05-10
  • 打赏
  • 举报
回复
多谢!多谢!!
daifei 2001-05-10
  • 打赏
  • 举报
回复
自然连接(INNER JOIN )也叫内连接。我们先看下面的例子:
例求每本杂志上刊登的文章
SELECT PUB_NAME,TITLE
FROM TITLES,PUBLISHERS
WHERE TITLES.PUB_ID=PUBLISHERS.PUB_ID
或写成:
SELECT PUB_NAME,TITLE
FROM TITLES INNER JOIN PUBLISHERS
ON TITLES.PUB_ID=PUBLISHERS.PUB_ID
其中,INNER JOIN 是SQL Server 的缺省连接,可简写为J O I N 。在J O I N 后面指定哪些表
作连接。O N 后面指定了连接的条件。
结果显示如下:
P U B _ N A M E TITLE
---------------------------------------- ------------------------------------------------------------------------
Algodata Infosystems The Busy Executive's Database Guide
Algodata Infosystems Cooking with Computers: Surreptitious Balance Sheets
New Moon Books You Can Combat Computer Stress!
Algodata Infosystems Straight Talk About Computers
Binnet & Hardley Silicon Valley Gastronomic Tr e a t s
Binnet & Hardley The Gourmet Microwave
Binnet & Hardley The Psychology of Computer Cooking
Algodata Infosystems But Is It User Friendly?
Algodata Infosystems Secrets of Silicon Va l l e y
Algodata Infosystems Net Etiquette
Binnet & Hardley Computer Phobic AND Non-Phobic Individuals: Behavior Va r i a t i o n s
New Moon Books Is Anger the Enemy?
New Moon Books Life Without Fear
New Moon Books Prolonged Data Deprivation: Four Case Studies
New Moon Books Emotional Security: A New Algorithm
Binnet & Hardley Onions, Leeks, and Garlic: Cooking Secrets of the Mediterranean
Binnet & Hardley Fifty Years in Buckingham Palace Kitchens
Binnet & Hardley Sushi, Anyone?
(18 row(s) aff e c t e d )
以上操作的过程如下:
1) 从T I T L E S 表中取出一条符合其条件的记录。
2) 扫描P U B L I S H E R S 表,分别检查每条记录是否在连接属性上同表T I T L E S 取出的记录相
等。
3) 相等就显示信息。继续从表T I T L E S 中取下一条记录,重复步骤2 。
其实,两个或多个表要做连接,那么这些表之间必然存在着主键和外键的关系。所以,
只需要将这些键的关系列出,就可以得出表连接的结果。如上例中,P U B _ I D 是P U B L I S H E R S
表的主键,P U B_ I D 又是TI T L E S 表的外键,参照P U B L I S H E R S 表中的P U B _ I D .所以,这两个表
的连接条件就是T I T L E S.PUB_ID=PUBLISHERS. PUB_ID 。
如果S E L E C T 后面的选择列表是*,我们将这种查询称为等值连接。如下例:
SELECT *
FROM TITLES,PUBLISHERS
WHERE TITLES.PUB_ID=PUBLISHERS.PUB_ID
等值连接同自然连接的区别是,结果集中有多余列数据,即连接的公共列(有t i t l e . p u b _ i d
和p u b l i s h e r s . p u b _ i d 两列)。
kingsong 2001-05-10
  • 打赏
  • 举报
回复
select * from table1 inner join table2 on table1.id=table2.id

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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