SQL Server 2008 R2——内连接 左连接 右连接 全连接 交叉连接

 SELECT * FROM Table_A
 GO
 SELECT * FROM Table_B
 GO

 --内连接
 SELECT a.*, b.* FROM Table_A a JOIN Table_B b ON a.ID = b.ID
 SELECT a.*, b.* FROM Table_A a INNER JOIN Table_B b ON a.ID = b.ID
 GO

 --内连接等价直接多表from的形式
 SELECT a.*, b.* FROM Table_A a INNER JOIN Table_B b ON a.ID = b.ID
 SELECT a.*, b.* FROM Table_A a, Table_B b WHERE a.ID = b.ID

 --左连接
 SELECT a.*, b.* FROM Table_A a LEFT JOIN Table_B b ON a.ID = b.ID
 SELECT a.*, b.* FROM Table_A a LEFT OUTER JOIN Table_B b ON a.ID = b.ID
 GO

 --右连接
 SELECT a.*, b.* FROM Table_A a RIGHT JOIN Table_B b ON a.ID = b.ID
 SELECT a.*, b.* FROM Table_A a RIGHT OUTER JOIN Table_B b ON a.ID = b.ID

 --A左连接B 等价于 B右连接A
 SELECT a.*, b.* FROM Table_A a LEFT JOIN Table_B b ON a.ID = b.ID
 SELECT a.*, b.* FROM Table_B b RIGHT JOIN Table_A a ON a.ID = b.ID

 --全连接
 SELECT a.*, b.* FROM Table_A a FULL JOIN Table_B b ON a.ID = b.ID
 SELECT a.*, b.* FROM Table_A a FULL OUTER JOIN Table_B b ON a.ID = b.ID

 --没有 WHERE 子句的交叉联接将产生所涉及的表的笛卡尔积。
 SELECT a.*, b.* FROM Table_A a CROSS JOIN Table_B b 

 --如果添加了 WHERE 子句,则交叉联接的行为将与内部联接行为相似
 SELECT a.*, b.* FROM Table_A a CROSS JOIN Table_B b WHERE  a.ID = b.ID
 SELECT a.*, b.* FROM Table_A a INNER JOIN Table_B b ON a.ID = b.ID
时间: 2024-10-26 10:18:56

SQL Server 2008 R2——内连接 左连接 右连接 全连接 交叉连接的相关文章

解析:内联,左外联,右外联,全连接,交叉连接的区别

连接分为:内连接.外连接.交叉连接 一.内连接--最常用 定义:仅将两个表中满足连接条件的行组合起来作为结果集. 在内连接中,只有在两个表中匹配的行才能在结果集中出现 关键词:INNER JOIN 格式:SELECT 列名表 FROM 表名1 [INNER] JOIN 表名2 ON或WHERE 条件表达式 说明: (1)列名表中的列名可以出自后面的两个表,但如果两个表中有同名列,应在列名前标明出处,格式为:表名.列名 (2)若连接的两个表名字太长,可以为它们起个别名. 格式为:表名 AS 别名 

SQL Server 2000向SQL Server 2008 R2推送数据

[文章摘要]最近做的一个项目要获取存在于其他服务器的一些数据,为了安全起见,采用由其他“服务器”向我们服务器推送的方式实现.我们服务器使用的是SQL Server 2008 R2,其他“服务器”使用的都是SQL Server 2000,还都是运行在Windows XP上的,整个过程遇到了一些问题,也参考了一些文档,最终费了好多事才算搞定. [文章索引] 配置分发服务器 配置发布数据库 配置订阅 [一.配置分发服务器] SQLServer 2000的复制服务包括三个角色:发布服务器.分发服务器和订

SQL Server 2008 R2如何开启数据库的远程连接

SQL Server 2008 R2如何开启数据库的远程连接 SQL Server 2005以上版本默认是不允许远程连接的,如果想要在本地用SSMS连接远程服务器上的SQL Server 2008,远程连接数据库.需要做两个部分的配置: 1,SQL Server Management Studio Express(简写SSMS) 2,SQL Server 配置管理器/SQL Server Configuration Manager(简写SSCM) 配置远程连接步骤 1.打开sql2008,使用w

[sql server 2008 r2] 开启数据库远程连接

1. 打开sql2008,使用windows身份登录 2. 登录后,右键选择“属性”.左侧选择“安全性”,选中右侧的“SQL Server 和 Windows 身份验证模式”以启用混合登录模式 3. 选择“连接”,勾选“允许远程连接此服务器”,然后点“确定” 4. 展开“安全性”,“登录名”;“sa”,右键选择“属性” 5. 左侧选择“常规”,右侧选择“SQL Server 身份验证”,并设置密码 6. 右击数据库选择“方面” 7. 在右侧的方面下拉框中选择“服务器配置”:将“RemoteAcc

Sql Server数据库 002—sql server 2008 r2 连接字符串

安装完了数据库,在程序中使用就需要连接字符串.如何写呢?以sql server 2008 r2后为例.1.安装好sql server 2008 r2后,类似oracle的plsql工具.sql server 2008 r2也有工具,那就是sql server management studio,如图 2.打开sql server management studio后,如图 服务器,用户名,密码都是在安装的时候自己输入的. 3.进入界面,可以创建自己的数据库名.也可以点击附件导入已有的数据库(md

sql server 2008 R2连接失败 错误:18456

这种问题的解决方法: 第一步:以windows验证模式进入数据库管理器. 第二步:在对新资源管理器中右击实例名称选择属性,弹出服务器属性对话框,我们在左侧栏选择[安全性]选项卡,选中”SQL Server和Windows身份验证模式“,并点击确定按钮. 第三步:在对新资源管理器中选择安全性-->登录名-->sa 第四步:右击sa,选择属性:在[常规]选项卡中,重新填写密码和确认密码. 第五步:点击[状态]选项卡:勾选授予和启用,然后点击确定按钮. 第六步:重启SQLSERVER服务(很重要)

SQL Server 2008 R2数据库镜像部署图文教程

数据库镜像是一种针对数据库高可用性的基于软件的解决方案.其维护着一个数据库的两个相同的副本,这两个副本分别放置在不同的SQL Server数据库实例中 概述 “数据库镜像”是一种针对数据库高可用性的基于软件的解决方案.其维护着一个数据库的两个相同的副本,这两个副本分别放置在不同的SQL Server数据库实例中.建议使用不同位置的两台服务器来承载.在同一时刻,其中一台上的数据库用于客户端访问,充当“主体服务器”角色:而另一台则根据镜像会话的配置和状态,充当热备份服务器,即“镜像服务器角色”,这两

SQL Server 2008 R2数据库镜像部署

概述 "数据库镜像"是一种针对数据库高可用性的基于软件的解决方案.其维护着一个数据库的两个相同的副本,这两个副本分别放置在不同的SQL Server数据库实例中.建议使用不同位置的两台服务器来承载.在同一时刻,其中一台上的数据库用于客户端访问,充当"主体服务器"角色:而另一台则根据镜像会话的配置和状态,充当热备份服务器,即"镜像服务器角色",这两种角色不是绝对的. 优点 l 增强了数据保护功能 l 提高了数据库的可用性 l 提高了生产数据库在升级

SQL Server 2008 (R2) 单机版安装的先决条件

原文:SQL Server 2008 (R2) 单机版安装的先决条件 出自:http://blogs.msdn.com/b/apgcdsd/archive/2012/03/07/sql-server-2008-r2.aspx 在为客户提供技术支持时,发现安装SQL Server 2008 (R2) 单机版出现的问题很多源于以下几个典型情况,而客户们有所不知,这正是SQL Server 安装所必须的先决条件: 1.       .NET Framework 3.5 SP1 2.       Win