位置: 编程技术 - 正文

SQL中JOIN和UNION区别、用法及示例介绍(sql union和join区别)

编辑:rootadmin
1.JOIN和UNION区别 join 是两张表做交连后里面条件相同的部分记录产生一个记录集, union是产生的两个记录集(字段要一样的)并在一起,成为一个新的记录集 。 JOIN用于按照ON条件联接两个表,主要有四种: INNER JOIN:内部联接两个表中的记录,仅当至少有一个同属于两表的行符合联接条件时,内联接才返回行。我理解的是只要记录不符合ON条件,就不会显示在结果集内。 LEFT JOIN / LEFT OUTER JOIN:外部联接两个表中的记录,并包含左表中的全部记录。如果左表的某记录在右表中没有匹配记录,则在相关联的结果集中右表的所有选择列表列均为空值。理解为即使不符合ON条件,左表中的记录也全部显示出来,且结果集中该类记录的右表字段为空值。 RIGHT JOIN / RIGHT OUTER JOIN:外部联接两个表中的记录,并包含右表中的全部记录。简单说就是和LEFT JOIN反过来。 FULL JOIN / FULL OUTER JOIN:完整外部联接返回左表和右表中的所有行。就是LEFT JOIN和RIGHT JOIN和合并,左右两表的数据都全部显示。 JOIN的基本语法: Select table1.* FROM table1 JOIN table2 ON table1.id=table2.id sql写法 内连接inner join: 或 左连接left join : 右连接right join : 全连接(full join): UNION运算符 将两个或更多查询的结果集组合为单个结果集,该结果集包含联合查询中的所有查询的全部行。UNION的结果集列名与UNION运算符中第一个Select语句的结果集的列名相同。另一个Select语句的结果集列名将被忽略。 其中两种不同的用法是UNION和UNION ALL,区别在于UNION从结果集中删除重复的行。如果使用UNION ALL 将包含所有行并且将不删除重复的行。 UNION和UNION ALL的区别: union 检查重复 union all 不做检查 比如 select 'a' union select 'a' 输出就是一行 a 比如 select 'a' union all select 'a' 输出就是两行 a 2. 通过下面的例子,可以清晰的看出和理解2者的区别 实例1 典型的二表连接演示 假定有两个表Table1和Table2,其包含的列和数据分别如表1.1和表1.2所示。 表1.1 Table1数据库表

推荐整理分享SQL中JOIN和UNION区别、用法及示例介绍(sql union和join区别),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:sql,union,sql,union,sql中join和innerjoin,sql语句join in 和join区别,sql join 和inner join,sql join和union,sql join的区别,sql join的区别,内容如对您有帮助,希望把文章链接给更多的朋友!

ColumnA

ColumnB

ColumnC

X1

Y1

Z1

X2

Y2

Z2

X3

Y3

Z3

表1.2 Table2数据库表

ColumnA

ColumnD

ColumnE

X1

D1

E1

X2

D2

E2

X3

D3

E3

Table1和Table2表共有的列为ColumnA,如果通过ColumnA列的值连接Table1和Table2两个表,即连接条件为Table1.ColumnA=Table2.ColumnA,此时得到的连接结果如表1.3所示。

表1.3 连接Table1和Table2表

ColumnA

ColumnB

ColumnC

ColumnD

ColumnE

X1

Y1

Z1

D1

E1

X2

Y2

Z2

D2

E2

X3

Y3

Z3

D3

E3

上述连接过程的实现代码可表示如下:SELECT * FROM Table1 JOIN Table2 ON Table1.ColumnA=Table2.columnA

实例2 典型的二表记录的UNION运算

假定有两个表Table3和Table4,其包含的列和数据分别如表2.1和表2.2所示。

表2.1 Table3数据库表

ColumnA

ColumnB

ColumnC

X1

Y1

Z1

X2

Y2

Z2

X3

Y3

Z3

表2.2 Table4数据库表、

ColumnA

ColumnD

ColumnE

X4

Y4

Z4

X5

Y5

Z5

X6

Y6

Z6

Table3表和Table4表具有相同的列结构,列数也要相同,列名可以不同,以第一个表的列名为新表的列名,因此可以使用UNION运算符连接两个表的记录集,得到的连接结果如表2.3所示。

表2.3 使用UNION连接Table3表和Table4表的记录

ColumnA

SQL中JOIN和UNION区别、用法及示例介绍(sql union和join区别)

ColumnB

ColumnC

X1

Y1

Z1

X2

Y2

Z2

X3

Y3

Z3

X4

Y4

Z4

X5

Y5

Z5

X6

Y6

Z6

上述连接过程的实现代码可表示如下:SELECT * FROM Table3 UNION SELECT *FROM Table4

对比实例1和实例2,不难发现二者的区别。

关于SQL中CTE(公用表表达式)(Common Table Expression)的总结 一.WITHAS的含义WITHAS短语,也叫做子查询部分(subqueryfactoring),可以让你做很多事情,定义一个SQL片断,该SQL片断会被整个SQL语句所用到。有的时候,

SQL临时表递归查询子信息并返回记录的代码 declare@Q_IDuniqueidentifierset@Q_ID=dbo.uf_GetParamValueByName(@Params,'@指标ID');declare@QAExp_IDchar()--指标属性公式IDset@QAExp_ID='3D2B8F3F-0B7E-FD-9B-FC'declare@temp_qidta

每个分类取最新的几条的SQL实现代码 CREATETABLEtable1([ID][bigint]IDENTITY(1,1)NOTNULL,[Name][nvarchar]()NOTNULL,[class]intnotnull,[date]datetimenotnull)class表示分类编号。分类数不固定,至少有上千种分类date表

标签: sql union和join区别

本文链接地址:https://www.jiuchutong.com/biancheng/348167.html 转载请保留说明!

上一篇:SQL的Join使用图解教程(sql,join)

下一篇:关于SQL中CTE(公用表表达式)(Common Table Expression)的总结(sql中的coalesce)

  • 公司租的住宅和商品房
  • 小规模纳税人能开1%的专票吗
  • 普通发票作废要收回吗
  • 汽车销售分期付款的账务处理
  • 金蝶利润表为什么没有收入
  • 普票也要盖发票专用章吗
  • 对公账户转账给法人用途写什么
  • 救援车拉货交警查吗?
  • 经营所得与劳务所得的税率
  • 小微企业季报
  • 生活记账技巧
  • 计提所得税费用的账务处理
  • 印花税减半征收优惠政策2022
  • 开票资料都包括什么内容
  • 项目清算组
  • 办公室零食知乎
  • 多交税款退税怎么做账
  • 广告制作费怎么入账
  • 返回的工会经费如何做账最新
  • 协会会费计入什么会计科目二级
  • 发票盖章盖成了财务章有影响吗
  • 买股票的分红怎么拿
  • 工会经费的开支必须取得发票么
  • 收到投资款如何记账
  • win10夜间模式怎么打开不了
  • 什么原因导致血脂高
  • hp tpn-c120笔记本
  • 暂估成本比实际高分录
  • 个体户生产经营所得怎么报税
  • 员工两处取得的荣誉
  • 支付拍卖成交金额是多少
  • 筹建期间费用如何记账
  • PHP:pg_parameter_status()的用法_PostgreSQL函数
  • 材料费可抵扣进项税计算
  • 差额征收是啥意思
  • 什么是两免一补的条件
  • 房地产企业预缴税款最新规定
  • 大数据分析案例结论
  • chown命令和chmod
  • 准予扣除业务招标的情形
  • 合并报表为什么要抵消子公司所有者权益
  • 将织梦dedecms转换到wordpress
  • 补记以前年度固定资产怎么记账
  • 海关报关单位注销操作规程
  • 绩效是否需要交税
  • 地方水利建设基金减免政策2023
  • 一般纳税人企业所得税5%还是25%
  • 申报无票收入后期开票要冲回要备案吗
  • 公司销售红酒需要什么资质
  • 为什么付款后没有记录
  • 什么情况下需要缴纳
  • 公司支出发票
  • 租赁合同的印花税的计税依据
  • 应纳税所得额收入总额包括
  • 让渡是什么
  • 减免所得税优惠政策
  • 会计里面权益是什么
  • sql server如何远程登录
  • sql只能查询数据,不能修改数据
  • unix的文件系统采用
  • win10升级2020
  • linux常用命名
  • xp事件管理器
  • linux安装glibc.i686
  • linux创建.c
  • win8系统启动不了如何修复
  • unity导出exe文件
  • 游戏开发unity3d
  • Android多线程开发
  • 【mclin】手把手叫你在Eclipse里添加Android开发功能(附:完整离线版Android_SDK和Android_ADT下载)
  • 深入理解计算机系统
  • JavaScript小技巧整理
  • Dojo Javascript 编程规范 规范自己的JavaScript书写
  • python常用的内置逻辑判断函数
  • 企业欠税补交后影响贷款吗
  • 资源税选矿和原油的区别
  • 小规模纳纳税人
  • 天津定额发票查询真伪查询
  • 天津静海离天津市区多远
  • 北京市朝阳区地税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设