1、连接查询,课程安排,连接的方法和种类交叉连接内连接外连接复合连接,系统函数,数学函数字符串函数日期时间函数其他函数,连接的方法和种类,SQL Server提供了不同的语法格式支持不同的连接方式 使用JOIN关键字的连接语法形式(sql99) SELECT 列名列表 FROM 表名1 JOIN_TYPE 表名2 ON 连接条件 WHERE 逻辑表达式 在WHERE条件中指定连接条件的连接语法形式(sql92) SELECT 列名列表 FROM 表名列表 WHERE 表名.列名 JOIN_OPERATOR 表名.列名n连接种类 交叉连接 ;内连接 ;外连接 ;,交叉连接,Sql99语法格式: fr
2、om 表名1 cross join 表名2 Sql92语法格式: from 表名1, 表名2说明:两个表做笛卡尔积 ,得到的结果集的行数是两个表的行数的乘积,内连接,内连接:使用比较运算符比较要连接列中的值的连接,返回符合连接条件的数据行。格式: sql99: from 表名1 inner join 表名2 on 连接表达式 sql92: from 表名1, 表名2 where 连接表达式等值连接:使用“=”关系将表连接起来的查询自然连接:等值连接中去掉重复的列,形成的连接自连接:一个表与自己进行连接,需给表起别名加以区别,由于所有属性名都是同名属性,因此必须使用别名前缀。,外连接,外连接:内
3、连接只返回满足连接条件的数据行。外连接以指定表为连接主体,将主体表中不满足连接条件的数据行一并输出。外连接类型: 1) 左外连接 2)右外连接 3)全外连接左外连接: 语法格式: from 表名1 left outer join 表名2 on 连接表达式 功能:加入表1没形成连接的数据行,表2列为NULL。,外连接,右外连接: 语法格式: from 表名1 right outer join 表名2 on 连接表达式 功能:加入表2没形成连接的数据行,表1列为NULL。全外连接: 语法格式: from 表名1 full outer join 表名2 on 连接表达式 功能:加入表1没形成连接的数据行,表2列为NULL。 以及表2没形成连接的数据行,表1列为NULL。,复合连接,指定多个连接条件连接多个表,