【问题标题】:access append-query: set column to a literal for each record访问追加查询:将列设置为每条记录的文字
【发布时间】:2009-09-17 16:46:30
【问题描述】:

我有多个包含相似记录的表。我想将它们合并到一张表中。 因此我使用更新查询并将各个表中的字段映射到我的目标表中的字段。但我需要跟踪记录来自哪个表,所以我想在结果表的 ORIGINALTABLE 字段中为每条记录添加一个文字“TABLE_XY”。但查询设计者总是想要一个源字段。我不能只在“附加到”中选择 ORIGINALTABLE 的任何地方放置文字...

怎么办?我真的必须在原始表中添加一个 NAMEOFTHISTABLE 字段吗...?

感谢您的帮助!

【问题讨论】:

  • 当你声明你“不能只是在任何地方放一个文字”时,这根本不是真的。 SELEC 语句总是可以包含文字值作为列。

标签: ms-access


【解决方案1】:

制作数据库的备份副本。创建一个新查询并切换到 SQL 视图。然后粘贴此语句,并修改表和字段名称以匹配您的:

INSERT INTO master_table (
    ORIGINALTABLE
    , field1
    , field2
    )
SELECT
    "TABLE_XY" AS ORIGINALTABLE
    , field_a
    , field_b
FROM
    TABLE_XY;

【讨论】:

    【解决方案2】:

    使用Design View 中的查询设计器进行更新查询:

    Field: ORIGINALTABLE 
    Table: <tableName>, where tableName is the name of the table you are updating.
    Update To: "TABLE_XY", make sure to include the quotes.
    

    使用Design View 中的查询设计器进行追加查询:

    Field: Expr1: "TABLE_XY", where Expr1 is an alias name.
    Table: <leaveBlank>
    Append To: ORIGINALTABLE 
    

    【讨论】:

    • 我正在使用“追加查询”来合并我的表。生病尝试更新查询。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-08
    相关资源
    最近更新 更多