黑马程序员学习日记------MSSQL表连接

来源:互联网 发布:马里亚纳网络战争七区 编辑:程序博客网 时间:2024/06/05 00:24

---------------------- Windows Phone 7手机开发.Net培训、期待与您交流! ----------------------

JOIN_TYPE为连接类型,可分为3种:1,内部连接 2,外部连接 3,交叉连接。
其中,内部连接JOIN_TYPE的形式为[INNER] JOIN;
外部连接又分两种,一种为左外连接,JOIN_TYPE的形式为LEFT OUTER JOIN或LEFT JOIN;另一种为右外连接,JOIN_TYPE的形式为RIGHT OUTER JOIN或RIGHT JOIN;
全外连接,JOIN_ TYPE的形式为FULL OUTER JOIN或FULL JOIN。
交叉连接中JOIN_TYPE的形式为CROSS JOIN。ON (join_condition) 子句指出连接条件,它由被连接表中的列和比较运算符、逻辑运算符等构成。


连接分为:内连接、外连接、交叉连接
一、内连接——最常用
定义:仅将两个表中满足连接条件的行组合起来作为结果集。
在内连接中,只有在两个表中匹配的行才能在结果集中出现
关键词:INNER JOIN(INNER可以忽略)
格式:SELECT 列名表 FROM 表名1 [INNER] JOIN 表名2 ON或WHERE条件表达式
   如:select o.BillNo,c.Name,c.Age
          from T_Orders as o join T_Cusetomers as c on o.CustomerId=c.Id
          where c.Age>15
说明:
(1)列名表中的列名可以出自后面的两个表,但如果两个表中有同名列,应在列名前标明出处,格式为:表名.列名
(2)若连接的两个表名字太长,可以为它们起个别名。 格式为:表名 AS别名
(3)INNER是默认方式,可以省略
二、外连接
1、左(外)连接
定义:在内连接的基础上,还包含左表中所有不符合条件的数据行,并在其中的右表列填写NULL
关键字:LEFT JOIN
2、右(外)连接
定义:在内连接的基础上,还包含右表中所有不符合条件的数据行,并在其中的左表列填写NULL
关键字:RIGHT JOIN
3、完全连接
定义:在内连接的基础上,还包含两个表中所有不符合条件的数据行,并在其中的左表、和右表列填写NULL
关键字:FULL JOIN
三、交叉连接
定义:将两个表的所有行进行组合,连接后的行数为两个表的乘积数。(笛卡尔积)
关键词:CROSS JOIN
格式:FROM 表名1 CROSS JOIN 表名2



---------------------- Windows Phone 7手机开发.Net培训、期待与您交流! ---------------------- 
详细请查看:http://net.itheima.com/