图解各种SQL连接

图解各种SQL连接

连接的分类

  • 内连接

    • 等值连接(INNER JOIN)
    • 自然连接(NATURAL JOIN)
    • 交叉连接(CROSS JOIN)
    • 不等连接
  • 外连接
    • 左外连接(LEFT OUTER)
    • 右外连接(RIGHT OUTER)
    • 全外连接(FULL OUTER)
连接类型 说明 图例 SQL示例
等值连接 只用等号进行连接 select * from A INNER JOIN B where A.key = B.key
自然连接 只用等号进行连接,且去掉重复的行 select * from A NATURL JOIN B
交叉连接 也叫笛卡尔积,连接A和B,不进行任何过滤 select * from A,B
不等连接 与等值连接相反,使用不等号进行连接 select * from A INNER JOIN B where A.key != B.key
左外连接 连接时左表不受限制 select * from A LEFT OUTER JOIN B where A.key = B.key
右外连接 连接时右表不受限制 select * from A RIGHT OUTER JOIN B where A.key = B.key
全外连接 连接时左右表都不受限制 select * from A FULL OUTER JOIN B where A.key = B.key


欢迎光临我的网站----蝴蝶忽然的博客园----人既无名的专栏
如果阅读本文过程中有任何问题,请联系作者,转载请注明出处!

时间: 2024-10-03 22:51:36

图解各种SQL连接的相关文章

图解:SQL Server SSIS包和job的部署攻略

原文:图解:SQL Server SSIS包和job的部署攻略 以下将建立一个SQL Server SSIS包 然后在job中使用这个包,并将job部署到目标机器 1. 首先建立ssis包,使用sql server 自带的business intelligence development stdio即可定制自己所需的SSIS package 2. 将SSIS包中需要动态改变的配置导出config文件,比如数据库的连接字符串等, 在包的work flow的空白处右键,选择包配置 3. 勾选启用包配

StreamRead和sqlparamter,sql连接查询

  StreamRead和sqlparamter,sql连接查询以及分页整理 -> Xml操作 InnerText 会对标签<>转义 InnerXml 不会对标签转义 委托 多播委托. --写入txt StreamWrite 写入文本 reader.FieldCount得到字段的个数 StreamWrite对象的WriteLine()方法就可以把读取的内容写入到txt中 StreamRead 读取文本 string temp; while((temp = reader.ReadLine(

我需要c#代码,与sql连接的那种

问题描述 我需要c#代码,与sql连接的那种 1C 我需要C#查询 删除 添加 修改的代码与数据库连接的那种,好多都忘完求了!!! 解决方案 http://blog.sina.com.cn/s/blog_7e06dd2401018wot.html 解决方案二: http://blog.csdn.net/china_pro/article/details/4728583 解决方案三: c#连接MDBSQL数据库代码C#附加SQL2005数据库详细代码C#附加SQL2005数据库详细代码

kill-C# 结束SQL连接程序进程

问题描述 C# 结束SQL连接程序进程 for (int iRow = 0; iRow <= spidTable.Rows.Count - 1; iRow++) { Cmd.CommandText = ""kill "" + spidTable.Rows[iRow][0].ToString(); //强行关闭用户进程 Cmd.ExecuteNonQuery(); } 用这个方法结束连接数据库的进程,但是总是提示我不能结束自己的进程,如何解决? 解决方案 通过存

PL/SQL连接远程数据库

1.利用ORACLE NET MANAGER工具  1)打开 ORACLE NET MANAGER  2)增加"服务命名"  第一步 NET服务名:任意填写  第二步 通讯协议:如果连接远程机器上的ORACLE,选择TCP/IP(internet协议)  第三步 主机名:输入IP地址 端口号:一般缺省为1521  第四步 SID: 一般和数据库名字相同  第五步 测试  3)启动PL/SQL连接   2.直接修改配置文件:  1)打开目录D:/oracle安装目录/ora92/netw

连接数据库 错误-我的sql连接有问题吗?用的是Dwr!看下面代码以及出的问题,请大神们帮我呀!

问题描述 我的sql连接有问题吗?用的是Dwr!看下面代码以及出的问题,请大神们帮我呀! 我的DBManager!用于连接数据库! package com.qhit.util; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import javax.n

oracle11g pl sql-oracle11g与pl/sql连接问题

问题描述 oracle11g与pl/sql连接问题 我电脑是64位的,安装了oracle11g,也安装了plsql但是不知道他们怎么连接起来的,请大神帮帮忙,本人是初级选手,麻烦大神说的详细点,拜托了,谢了 解决方案 http://blog.csdn.net/txadf/article/details/49765403 解决方案二: 我都按照网上的改了以后,再次登录客户端提示为:ORA-12514:TNS:listener does not currently know of service r

oracle11g pl sql-PL/SQL连接oracle11g时报出ORA-12545错,怎么解决啊,求帮忙。。。

问题描述 PL/SQL连接oracle11g时报出ORA-12545错,怎么解决啊,求帮忙... 现在我想用PL/SQL连接我的oracle11g,可是一直报ORA-12545,为什么啊,我测试能成功,就是用PL/SQL连的时候报错...求各路大神帮忙啊 解决方案 参考:http://blog.csdn.net/takusann2007/article/details/12187529 http://blog.csdn.net/Palmer_xu/article/details/7564212

pl sql-用pl/sql连接oracle出现异常,刚刚装上oracle,没有数据库

问题描述 用pl/sql连接oracle出现异常,刚刚装上oracle,没有数据库 解决方案 在oracle工具net manager里面配置的数据库链接对不对,里面可以测试的. 测试通过后,打开plsql会自动加载数据库. 解决方案二: 数据库的连接字符串估计有问题,所以连接不上,出错了 解决方案三: PL/SQL的监听没有设置对吧 解决方案四: PL/SQL连接oracle数据库oracle配置数据库连接[PL/SQL]