在MS Access中组合字段

时间:2012-10-05 16:10:22

标签: sql database ms-access ms-access-2010

我有两个字段,tblIT.Person_Name和tblEng.Full_Name。我想创建一个包含第一个表中所有名称的新列,并将它们添加到第二列并将它们全部放入一个主列中

Person_name
-------------
John Smith  |
-------------
Gary Porter |

Full_name
-------------
Gary Porter |
-------------
Nancy Becker|

我正在寻找:

People
-------------
Gary Porter |
-------------
Nancy Becker|
-------------
John Smith  |

这不是连接,很多人一直在告诉我,它只是加入了两个表。

2 个答案:

答案 0 :(得分:2)

创建2个表的UNION。这将清除重复的值。

SELECT Person_name AS People FROM tblIT
UNION
SELECT Full_Name FROM tblEng

如果您想要两个表中的所有行(包括重复行),则可以使用UNION ALL。但看起来你不想要重复。

结果集不可编辑。

如果要将这些存储在另一个表的列中,可以插入UNION查询的结果。 UNION关键字可能会导致语法错误与一个简单的INSERT语句,因此在INSERT中包含UNION作为子查询。

INSERT INTO YourTable (People)
SELECT sub.People
FROM
    (
        SELECT Person_name AS People FROM tblIT
        UNION
        SELECT Full_Name FROM tblEng
    ) AS sub

答案 1 :(得分:0)

使用UNION没有ALL,因为它允许重复)合并所有结果。

SELECT col1 FROM Person_name
UNION
SELECT col1 FROM Full_name

它结合了结果,没有加入结果:)