首页 > 解决方案 > 一个表中的值作为 INSERT 语句中的 DateAdd 间隔到另一个表

问题描述

我需要使用一个表中的值作为 INSERT 语句中的 DateAdd 间隔到第二个表

办事处:

officeID | office | deadline

订单:

orderID | officeID | DateReceived | DateDue

这是我一直在尝试做的事情:

INSERT INTO orders(officeID, DateReceived, DateDue)
    VALUES (1, #2018-06-14#, DateAdd("d", (SELECT deadline FROM offices WHERE officeID = 1), "2018-06-14"))

这可能吗?

任何帮助表示赞赏!

标签: sqlexcelvbams-accessinsert

解决方案


使用insert . . . select

INSERT INTO orders (officeID, DateReceived, DateDue)
   SELECT 1, #2018-06-14#, DateAdd("d", deadline, "2018-06-14")
   FROM offices
   WHERE officeID = 1;

也就是说,我想知道你是否只想update

update orders
    set datedue = (select DateAdd("d", deadline, "2018-06-14")
                   from offices
                   where orders.officeID = offices.officeID
                  )
    where officeID = 1;

推荐阅读