如何用SQL返回2个表中的所有列,并且数据不要有重复的,如表X
字段A 字段B
2010.01.02 20
2010.01.04 50
2010.01.04 60表Y
字段A 字段B
2010.01.02 100
2010.01.04 90
2010.01.05 900
2010.01.06 120返回数据:字段A 字段B 字段A 字段B
2010.01.02 100 2010.01.02 20
2010.01.04 90 2010.01.04 50
2010.01.05 900 2010.01.04 60
2010.01.06 120
字段A 字段B
2010.01.02 20
2010.01.04 50
2010.01.04 60表Y
字段A 字段B
2010.01.02 100
2010.01.04 90
2010.01.05 900
2010.01.06 120返回数据:字段A 字段B 字段A 字段B
2010.01.02 100 2010.01.02 20
2010.01.04 90 2010.01.04 50
2010.01.05 900 2010.01.04 60
2010.01.06 120
解决方案 »
- 为何我在删除SQL SERVER2000时总是删不掉```因为当想重新安装时总是说``以前安装过````
- SQL有50000条数据导出为EXECL遇到的问题!
- 一个存储过程的问题,谁能帮帮我啊
- SQL字段内容含有HTML标签,如何模糊查询?
- 谁能推荐一个(或多个)较好的Transact-SQL编辑软件,SQL Server的SQL查询分析器的编辑实在太烂了
- 求助!帮忙优化sql语句。
- 用存储过程能不能实现如下操作?
- 到那里学习SQL语言
- 有关SQL从存储过程返回数百万条记录的查询!
- 如何让菜单运行在表单上?
- Sql server 服务不能启动.[高分求解]
- htl258 请进.有一问题请教.也欢迎其他朋友补充.谢谢!
-- 没有对应关系的两个表关联,用临时表吧。
select id=identity(int,1,1),* into #lsb1 from 表X
select id=identity(int,1,1),* into #lsb2 from 表Yselect distinct b.*,a.*
from 表X a join 表Y b on a.id=b.id
go
insert t1
select '2010.01.02',0
union select '2010.01.04', 50
union select '2010.01.04', 60create table t2(a varchar(10),b int)
go
insert t2
select '2010.01.02', 100
union select '2010.01.04', 90
union select '2010.01.05', 900
union select '2010.01.06', 120select id=identity(int,1,1),* into #lsb1 from t1
select id=identity(int,1,1),* into #lsb2 from t2select x.a,x.b,y.a,y.b
from #lsb2 x left join #lsb1 y on x.id=y.iddrop table t1,t2,#lsb1,#lsb2