读书人

怎么将两个结构相同表联合当一个表处理

发布时间: 2012-01-13 22:43:30 作者: rapoo

如何将两个结构相同表联合当一个表处理?
有两个相同的表A B

id Account Year Month value
Account+year+month 主键

A表存的是未回收的
B表存的是已回收的

就是说A表存在的唯一记录在B表中不会存在

如何将A表和B表联合成一个表,并增加一个字段 type,A表的都是0 B表的都为1
因为在其他查询中会要求两个表的数据都查,想把他们当一个表使用
如何写查询语句?还是说要建立什么东西,建立视图能达到这个功能嘛?


[解决办法]
--建立视图能达到这个功能
create view v1 as
select type=0,* from a
union all
select state=1,* from a



[解决办法]
SELECT id,Account,Year,Month,value,type = 0
FROM A表
UNION ALL
SELECT id,Account,Year,Month,value,type = 1
FROM B表

[解决办法]
SELECT id,Account,Year,Month,value,0 as Type
FROM A表
UNION ALL
SELECT id,Account,Year,Month,value,1 as Type
FROM B表
[解决办法]
union all
[解决办法]
union all
可以不用视图
直接

SELECT id,Account,Year,Month,value,0 as Type
FROM A表
UNION ALL
SELECT id,Account,Year,Month,value,1 as Type
FROM B表
就可以

读书人网 >SQL Server

热点推荐