sqlserver2016第七章ch02

2016-12-11 09:25:06来源:作者:人点击

第七城市

7-2 结合多个表

内部结合:根据关系情报进行结合演算

文法:

SELECT 选择的列 FROM 表名1 INNER JOIN 表名2

on 表名1.结合键所在列= 表名2.结合键所在列

实例

将社员表和部门表进行内部结合.结合键为 部门编号

SELECT*FROM 社 INNER JOIN 部

ON 社.部番号=部.部番号

因为将社员表与部门表中的部门编号相等的列联结了起来,所以这种结合也称做“等价结合”

指定选出列名的结合方式:

SELECT 氏名,部名

FROM 社 INNER JOIN 部

ON 社.部番号=部.部番号

然而,如果要取得部门编号这一列,会出现以下错误:列名不明确

SELECT 氏名,部名,部番号

FROM 社 INNER JOIN 部

ON 社.部番号=部.部番号

由于部门编号列既存在于社员表中,又存在于部门表中,所以必须明确其存在位置。

改为:

SELECT 氏名,部名,部.部番号

FROM 社 INNER JOIN 部

ON 社.部番号=部.部番号

在实际的开发中,需要频繁结合多个表,建议将每个被选择列编写为:表名.列名 增加程序可读性。

为表名添加别名

当表名过长时,频繁记述表名太过繁琐,可以用别名替代表名使用。

SELECT s.氏名,b.部番号,b.部名

FROM 社 AS s INNER JOIN 部 AS b

ON s.部番号=b.部番号

如果用别名来替代表明,在select 语句中也必须用别名进行替换。在这里虽然使用了s,b这种名称,出于保守性(sql会进行更改或者有其他人要对sql进行修改的时候)的考虑

·尽量用简单易懂的名字进行替换。

2.使用编辑查询器GUI操作进行多个表的结合与选择。

/
/
/

利用GUI操作就能自动生成代码了。

第七城市

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台