union用法,union语句 where 条件用法

首先说明一下union和union all区别

union: 对两个结果集进行并集操作, 不包括重复行,相当于distinct, 同时进行默认规则的排序;

union all: 对两个结果集进行并集操作, 包括重复知行, 即所有的结果全部显示, 不管是不是重复;

union内部的select语句必须拥有相同数量的列列也必须拥有相似的数据类型,同时,每条select语句中列的顺序必须相同

场景实例:现登录功能要从用户表A和用户表B两表中进行筛选

代码实现:

select * from (
select [EName],[LoginName],[LoginPwd],2 as ActionID from 表A
UNION  
select [EName],[LoginName],[LoginPwd],ActionID from 表B
)emptb

筛选用户名 EName 为 “张三” 的用户

代码实现:

select * from (
select [EName],[LoginName],[LoginPwd],2 as ActionID from 表A
UNION  
select [EName],[LoginName],[LoginPwd],ActionID from 表B
)emptb
where emptb.EName="张三"

  

  

原文地址:https://www.cnblogs.com/JoeYD/p/12867601.html