MS Access ComboBox源查询值问题

时间:2016-12-11 10:03:45

标签: sql sql-server ms-access sql-server-2012 ms-access-2016

这是我的问题: 我有一个组合框,它的源必须是两个表的联合。 一个表是本地AllUsers,它只有一个记录:

    +------------+----------+
    |IndexKey    | UserName |
    +----------- +----------+
    | -1         |  ALL     |
    +-----------------------+

,第二个是从MS SQL Server dbo_NGAC_USERINFO链接的,我只得到两个字段:

    +-----------+----------+
    |IndexKey   | Name     |
    +-----------+----------+
    | 1         |  Tedo    |
    +-----------+----------+
    | 2         |  Tornike |
    +-----------+----------+
    | 4         |  John    |
    +----------------------+

所以,我想获得这些表的联合结果,它将如下所示:

    +-----------+----------+
    |-1         |  ALL     |
    +-----------+----------+
    | 1         |  Tedo    |
    +-----------+----------+
    | 2         |  Tornike |
    +-----------+----------+
    | 4         |  John    |
    +----------------------+

但我的问题是: 如果我编写union Query,它会显示IndexKey的空白值和正确的值Name。但如果我在查询中只为第一个或第二个表写select,它会显示正确的结果。 这是我的代码,显示不正确的结果:

SELECT *
FROM AllUsers 
UNION ALL 
SELECT dbo_NGAC_USERINFO.IndexKey, dbo_NGAC_USERINFO.Name 
FROM dbo_NGAC_USERINFO 

我尝试了:手动编写AllUsers表中的值,使用Union而不是Union All进行写入,最后移动第一个表,然后移动第二个表首先,排序,创建子查询,为字段名制作别名,但我的所有尝试都不成功。 任何帮助将不胜感激,提前谢谢。

1 个答案:

答案 0 :(得分:0)

尝试更具体:

SELECT AllUsers.IndexKey, AllUsers.Name 
FROM AllUsers 
UNION ALL 
SELECT dbo_NGAC_USERINFO.IndexKey, dbo_NGAC_USERINFO.Name 
FROM dbo_NGAC_USERINFO