SQL server 误区学习之Union和Union all
2013-01-12 14:27
453 查看
Union和Union all 大家都知道是什么,也知道它们之间的区别,以例子来说,
建表语句: CREATE TABLE [dbo].[excel_read]
(
[id] [int] NULL,
[name] [nvarchar] (100) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]
GO
INSERT INTO dbo.excel_read ( id, name )VALUES ( 1, N'Excel' )
INSERT INTO dbo.excel_read( id, name )VALUES ( 2, N'Sqlserver2008' )
现在运行语句:
select id,name from excel_read a
union all
select id,name from excel_read b
和
select id,name from excel_read a
union
select id,name from excel_read b
现在向excel_read 插入2次重复数据
insert into excel_read(id,name)
select id,name from excel_read
insert into excel_read(id,name)
select id,name from excel_read
现在excel_read有8条数据,
在执行下面的语句:
select id,name from excel_read a
union all
select id,name from excel_read b
和
select id,name from excel_read a
union
select id,name from excel_read b
大家可以猜下两条语句结果。
union all 是a+b一共16条记录,2个结果集合相加,不去除重复记录
union 是2条记录,2个结果集合相加,除去结果集中重复的记录后剩下不重复的记录。
建表语句: CREATE TABLE [dbo].[excel_read]
(
[id] [int] NULL,
[name] [nvarchar] (100) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]
GO
INSERT INTO dbo.excel_read ( id, name )VALUES ( 1, N'Excel' )
INSERT INTO dbo.excel_read( id, name )VALUES ( 2, N'Sqlserver2008' )
现在运行语句:
select id,name from excel_read a
union all
select id,name from excel_read b
和
select id,name from excel_read a
union
select id,name from excel_read b
现在向excel_read 插入2次重复数据
insert into excel_read(id,name)
select id,name from excel_read
insert into excel_read(id,name)
select id,name from excel_read
现在excel_read有8条数据,
在执行下面的语句:
select id,name from excel_read a
union all
select id,name from excel_read b
和
select id,name from excel_read a
union
select id,name from excel_read b
大家可以猜下两条语句结果。
union all 是a+b一共16条记录,2个结果集合相加,不去除重复记录
union 是2条记录,2个结果集合相加,除去结果集中重复的记录后剩下不重复的记录。
相关文章推荐
- SQL Server 学习(1)子查询(in,not in)、多表查询、合并表(union、union all)、分组(group by)、分组的条件(having)、虚拟表、标量值函数、外键
- ORACLE中UNION、UNION ALL、MINUS、INTERSECT学习
- ORACLE中UNION、UNION ALL、MINUS、INTERSECT学习
- sql server 的T-SQL 学习笔记(二)--- 解决union select插入多行数据过滤数据(union all)
- SQL SERVER 中UNION,UNION ALL用法,并且子句中Order by用法
- SQL Server 合并表 union 和union all
- [sql server] 问题总结7- union-- union all--with as 实例
- SQL Server中Union, Union All与TOP关键字同时使用的问题
- (2)sql 学习 : CONCAT ,SQL JOIN,union 与 union all,SELECT INTO
- SQL Server 排序函数 ROW_NUMBER、RANK、DENSE_RANK、INTERSECT、UNION、UNION ALL 用法总结
- SQL中MINUS、INTERSECT、UNION、UNION All
- Sql Server的艺术(五) SQL UNION与UNION JOIN运算符
- SQL Server误区30日谈 第16天 数据的损坏和修复
- [转载].FPGA学习的一些误区,身在误区里,好好研读
- SQL Server 中关于 @@error 的一个小误区
- SQL Server误区30日谈 第1天 正在运行的事务在服务器故障转移后继续执行
- 【SQL Server学习笔记】3:建立用户数据库
- BCP学习(1):BCP in SQL Server 2000
- SQL Server误区30日谈 第1天 正在运行的事务在服务器故障转移后继续执行
- SQL Server误区30日谈 第19天 Truncate表的操作不会被记录到日志