位置: 编程技术 - 正文

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)

  • 股份公司解散是什么?
  • 交车辆保险的车能买吗
  • 微信企业版支付
  • 单位买了一批空调怎么办
  • 报销销售部门差旅费
  • 电子税务局税种认定怎么操作
  • 个人所得税申报退税多久到账
  • 电子税务局怎么登录
  • 劳务费达到多少钱需要招标
  • 当月已抵扣的专用发票能作废吗
  • 怎么处理未抵扣增值税形成的留抵税额?
  • 外出拓展训练活动所花的费用怎么做分录?
  • 销售成本结转中的库存商品的单价错了怎么改u8
  • 不动产修理领用原材料账务处理?
  • 开出技术服务费的账务处理
  • 计提递延所得税的会计分录
  • 园林绿化苗木增值税抵扣税率是多少?
  • 环保税是甲方交的吗
  • 已开票怎么做坏账处理
  • 社会保险费缴费凭据在哪查
  • 财务费用为什么会出现负数
  • 外账进销存单据是怎么弄的?
  • 隐藏资源管理器里的cd驱动器
  • 如何查看系统浏览器记录
  • 鸿蒙系统超级终端手机连手机
  • 账套没有以前年度调整
  • 如何在pc桌面上添加文件
  • 发票认证了,但是没有入账
  • 控制器code是什么意思
  • 磷酸二氢钙生产
  • 火灾烧毁物品如何取证
  • 史密斯理工学院
  • php 图片上传
  • react moment
  • 疯狂世界百科
  • yolov5加入注意力机制后网络后进行剪枝
  • crypto 解密
  • 加油站的卷式发票能抵扣吗
  • 营业外支出贷方在利润表怎么体现
  • 增值税收范围
  • 母公司和子公司可以一起投标吗
  • 规模以上企业纳税要求
  • 支付水电费如何做账务处理
  • 普通发票上的银行账户有规定吗
  • mysql关闭连接命令
  • 公允价值变动是一级科目吗
  • 小规模纳税人如何升级为一般纳税人
  • 资本公积含义
  • 已经认证抵扣的发票,要退回,怎么处理
  • 制造费用的结转正确的是( )
  • 未计提坏账准备发生坏账如何处理
  • 长期待摊费用属于资产类吗
  • 简易计税开具的发票取得的进项可以抵扣嘛
  • 物业公司收取电费服务费
  • 被选为工会代表
  • 库存现金存入银行
  • 预收物业费预收什么意思
  • sqlserver自动生成id
  • mysql启动服务器失败
  • linux怎么自定义命令
  • linux wordpress gzip压缩开启方法
  • linux设置权限755
  • linux groupmod命令参数及用法详解(linux修改组信息命令)
  • win10 无线热点
  • win10怎么设置图片
  • win7微软账户
  • Android自定义对话框
  • shell的实现
  • javascript常用函数大全
  • js == ===区别
  • mysql数据类型大全
  • 天龙3d畅游端下载
  • jquery的核心函数
  • 基于javascript的毕业设计选题
  • javascript作用域链
  • 12123人工咨询电话
  • 支付水电费的增值税税率文件
  • 上海浦东税务局电话 工作时间
  • 分国分项抵免法
  • 跨境电商出口商品结构
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设