Office中国论坛/Access中国论坛

标题: 求助(将字段重新排列,且和例子格式完全一样,不能打乱顺序) [打印本页]

作者: huangyz_xy    时间: 2006-12-7 00:20
标题: 求助(将字段重新排列,且和例子格式完全一样,不能打乱顺序)
求助:最近因为工作的需要,要在ACCESS数据库查询中实现一种功能:把下面的表








A1

A2

A3

A4



B1

B2

B3

B4



C1

C2

C3

C4

变成以下格式:










A1



A2



A3



A4



B1



B2



B3



B4



C1



C2



C3



C4

要求格式和例子中的一样,不能打乱顺序!请问能有什么办法吗?不管是使用查询或者宏都可以!E-Mail:huangyz_xy@tom.com,先谢谢各位了!





[此贴子已经被作者于2006-12-7 13:43:24编辑过]


作者: andymark    时间: 2006-12-7 06:46
把标题改一下
作者: crg770502    时间: 2006-12-7 19:06
方法1

原始表单增加一个ID字段,自动编号。然后建一个联合查询,查询语句如下:

SELECT [表1].[col1] as 结果,表1.ID as 行号,1 as 列号
FROM 表1
UNION
SELECT [表1].[col2] as 结果,表1.ID as 行号,2 as 列号
FROM 表1
UNION
SELECT [表1].[col3] as 结果,表1.ID as 行号,3 as 列号
FROM 表1
UNION SELECT [表1].[col4] as 结果,表1.ID as 行号,4 as 列号
FROM 表1
ORDER BY 行号, 列号;


方法2

建临时表,分别用追加查询实现

[此贴子已经被作者于2006-12-7 11:13:05编辑过]


作者: huangyz_xy    时间: 2006-12-7 21:53
谢谢crg770502兄,问题解决了,不过还多了两列"行号"&"列号",能用什么语句自动去掉吗?

[此贴子已经被作者于2006-12-7 13:59:58编辑过]


作者: crg770502    时间: 2006-12-7 23:01
这两列是用来排序的,如果没有这方面的要求可以去除,语句如下:

SELECT [表1].[col1] as 结果 FROM 表1
UNION
SELECT [表1].[col2] as 结果 FROM 表1
UNION
SELECT [表1].[col3] as 结果 FROM 表1
UNION SELECT [表1].[col4] as 结果 FROM 表1;
如果必须排序就只能对该联合查询建立查询表或者按方法2去处理。




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3