我有一个包含多个字段的表格。其中两个有日期键。我需要在使用日历日期更新的表中插入两个新字段。这两个列的日历日期位于一个表中,主日期键和相应的日历日期位于单独的字段中。
所以例如; 单行在DATE KEY EFFECTIVE中具有14367作为日期键,在DATE KEY EXPIRATION中具有18434作为日期键。我希望这些字段根据主日期密钥表中相应的日历日期填充到14367和18434,在两个独立的列表1中。
表1
Date Master Key| Calendar Date
-----------------------------
1095829 | Jan 1
1093895 | Jan 15
1095289 | Feb 1
1093910 | Feb 15
1840294 | Mar 1
1838949 | Mar 15
1835019 | Apr 1
1840193 | Apr 15
表2
static void P1(int n ){
for (int i=1; i<=n; i++) {
Procedure();
}
这可以不将多个查询链接在一起吗?
答案 0 :(得分:0)
有趣
我从来没有在Access
中更新包含2个其他表的表更新包含1个其他表的1个表是常见的。因此,您可以通过2个不同的查询实现您想要的目标:
生效日期:
UPDATE Table1 T
INNER JOIN Table2 Eff ON T.[Effective Date]=Eff.[Date Master Key]
SET T1.[Eff Calendar Date]=Eff.[Calendar Date]
WHERE T.id = 1
到期日期:
UPDATE Table1 T
INNER JOIN Table2 Expi ON T.[Expiration Date]=Expi.[Date Master Key]
SET T1.[Exp Calendar Date]=Expi.[Calendar Date]
WHERE T.id = 1
但我想知道Access是否会在单个查询中接受这两个更新,因此您可以先测试它并告诉它是否有效:
UPDATE ((Table1 T
INNER JOIN Table2 Eff ON T.[Effective Date]=Eff.[Date Master Key])
INNER JOIN Table2 Expi ON T.[Expiration Date]=Expi.[Date Master Key])
SET T1.[Eff Calendar Date]=Eff.[Calendar Date], T1.[Exp Calendar Date]=Expi.[Calendar Date]
WHERE T.id = 1