+ -
当前位置:首页 → 问答吧 → 求一个SQL语句,使多个表合并,并生成新表。

求一个SQL语句,使多个表合并,并生成新表。

时间:2009-05-24

来源:互联网

表1内含(字段1、字段2、字段3),表2内含(字段1、字段2、字段3),.....表xx内含(字段1、字段2、字段3)
如何使他们合并,并生成新表ALL内含(字段1、字段2、字段3)?

高手是否能将SQL语句写的详尽一些,呵呵,新手上路,多多关照。

作者: younghot   发布时间: 2009-05-24

不太清楚楼主的意思,不过可以看一下:http://club.excelhome.net/viewth ... p;extra=&page=2这个贴的17楼,是不是楼主要的结果?

作者: zez   发布时间: 2009-05-24

谢谢大侠回复,我仔细研究了一下,可能还不是我追寻的结果。我的目的是想把结构相同的表合并为一个完整的新表,不是查询。我自己原先也些了一个query,如下:
select [AC_B0].Version, [AC_B0].[Account Code], [AC_B0].[Account Name], [AC_B0].[Expenses Item], [AC_B0].[Expenses Type], [AC_B0].[Responsible Dept], [AC_B0].Department, [AC_B0].Branch, [AC_B0].Cities, [AC_B0].Standard_Year, [AC_B0].Standard_Month, [AC_B0].Amount
FROM [AC_B0]
union all
SELECT [AG_B0].Version, [AG_B0].[Account Code], [AG_B0].[Account Name], [AG_B0].[Expenses Item], [AG_B0].[Expenses Type], [AG_B0].[Responsible Dept], [AG_B0].Department, [AG_B0].Branch, [AG_B0].Cities, [AG_B0].Standard_Year, [AG_B0].Standard_Month, [AG_B0].Amount
FROM [AG_B0]
已经完成了合并的查询,但是我没有办法把它另存为表,或者生成一个新表(名称为[All_B0]),不知您是否还可以赐教一二?谢谢啦:)

[ 本帖最后由 younghot 于 2009-5-25 09:43 编辑 ]

作者: younghot   发布时间: 2009-05-25

没有附件,无法测试,请自己测试下列代码是否正确:
SELECT 表1.* INTO All_B0
FROM (select [AC_B0].Version, [AC_B0].[Account Code], [AC_B0].[Account Name], [AC_B0].[Expenses Item], [AC_B0].[Expenses Type], [AC_B0].[Responsible Dept], [AC_B0].Department, [AC_B0].Branch, [AC_B0].Cities, [AC_B0].Standard_Year, [AC_B0].Standard_Month, [AC_B0].Amount
FROM [AC_B0]
union all
SELECT [AG_B0].Version, [AG_B0].[Account Code], [AG_B0].[Account Name], [AG_B0].[Expenses Item], [AG_B0].[Expenses Type], [AG_B0].[Responsible Dept], [AG_B0].Department, [AG_B0].Branch, [AG_B0].Cities, [AG_B0].Standard_Year, [AG_B0].Standard_Month, [AG_B0].Amount
FROM [AG_B0]) as 表1;

作者: zez   发布时间: 2009-05-25

谢谢老大了,呵呵,测试了一下,发现2个表是可以,但还想请教一下,如果是三个表,比方说[BD_B0]好像就不能复制上面的程序了,请麻烦再看一下,谢谢啦:)

作者: younghot   发布时间: 2009-05-28

请自己测试
SELECT 表1.* INTO All_B0
FROM (select [AC_B0].Version, [AC_B0].[Account Code], [AC_B0].[Account Name], [AC_B0].[Expenses Item], [AC_B0].[Expenses Type], [AC_B0].[Responsible Dept], [AC_B0].Department, [AC_B0].Branch, [AC_B0].Cities, [AC_B0].Standard_Year, [AC_B0].Standard_Month, [AC_B0].Amount
FROM [AC_B0]
union all
SELECT [AG_B0].Version, [AG_B0].[Account Code], [AG_B0].[Account Name], [AG_B0].[Expenses Item], [AG_B0].[Expenses Type], [AG_B0].[Responsible Dept], [AG_B0].Department, [AG_B0].Branch, [AG_B0].Cities, [AG_B0].Standard_Year, [AG_B0].Standard_Month, [AG_B0].Amount
FROM [AG_B0]
union all
SELECT [BD_B0].Version, [BD_B0].[Account Code], [BD_B0].[Account Name], [BD_B0].[Expenses Item], [BD_B0].[Expenses Type], [BD_B0].[Responsible Dept], [BD_B0].Department, [BD_B0].Branch, [BD_B0].Cities, [BD_B0].Standard_Year, [BD_B0].Standard_Month, [BD_B0].Amount
FROM [BD_B0]) as 表1;

作者: zez   发布时间: 2009-05-28

学习一下!怎么没人做这类的教程啦!!

作者: ExcelHome学者   发布时间: 2010-10-14

热门下载

更多