更新 SELECT 访问
UPDATE SELECT Access
这是一个与 MS Access 2010 相关的问题。
是否可以走捷径 (A) 并使用 SELECT 语句编写更新语句以捕获相关值,或者我是否必须走长途 (B) 并且我首先需要通过 SELECT 语句查询数据,我将其保存为查询,然后在我的 UPDATE 语句中引用这个保存的查询?
这是 (A):
UPDATE tbl_A
SET tbl_A.Header1 = (SELECT F1 FROM tblStaging
WHERE tblStaging.F1 = 'ISSUER CODE')
WHERE (((tbl_A.TableName)='tblStaging'));
这里是 B:
SELECT F1
FROM tblStaging
WHERE F1 = 'ISSUER CODE';
UPDATE tbl_A, Q_A_Sel_ISSUERCODE
SET tbl_A.Header1 = [Q_A_Sel_ISSUERCODE].[F1]
WHERE (((tbl_A.TableName)='tblStaging'));
谢谢
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~
克里斯给出了解决方案:
UPDATE tbl_A, tblStaging
SET tbl_A.Header1 = tblStaging.F1
WHERE (((tblStaging.F1)='ISSUER CODE') AND ((tbl_A.TableName)='tblStaging'));
我不确定 Access,但在 SQL Server 中,您可以像这样使用单个 UPDATE 语句(我认为它也应该在 Access 中工作):
UPDATE A
SET Header1 = S.F1
FROM tbl_A A, tblStaging S
WHERE S.F1 = 'ISSUER CODE' AND A.TableName ='tblStaging';
虽然如果这正是您想要做的,它与:
UPDATE tbl_A SET Header1 = 'ISSUER CODE'
WHERE TableName = 'tblStaging';
这是一个与 MS Access 2010 相关的问题。
是否可以走捷径 (A) 并使用 SELECT 语句编写更新语句以捕获相关值,或者我是否必须走长途 (B) 并且我首先需要通过 SELECT 语句查询数据,我将其保存为查询,然后在我的 UPDATE 语句中引用这个保存的查询?
这是 (A):
UPDATE tbl_A
SET tbl_A.Header1 = (SELECT F1 FROM tblStaging
WHERE tblStaging.F1 = 'ISSUER CODE')
WHERE (((tbl_A.TableName)='tblStaging'));
这里是 B:
SELECT F1
FROM tblStaging
WHERE F1 = 'ISSUER CODE';
UPDATE tbl_A, Q_A_Sel_ISSUERCODE
SET tbl_A.Header1 = [Q_A_Sel_ISSUERCODE].[F1]
WHERE (((tbl_A.TableName)='tblStaging'));
谢谢
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~
克里斯给出了解决方案:
UPDATE tbl_A, tblStaging
SET tbl_A.Header1 = tblStaging.F1
WHERE (((tblStaging.F1)='ISSUER CODE') AND ((tbl_A.TableName)='tblStaging'));
我不确定 Access,但在 SQL Server 中,您可以像这样使用单个 UPDATE 语句(我认为它也应该在 Access 中工作):
UPDATE A
SET Header1 = S.F1
FROM tbl_A A, tblStaging S
WHERE S.F1 = 'ISSUER CODE' AND A.TableName ='tblStaging';
虽然如果这正是您想要做的,它与:
UPDATE tbl_A SET Header1 = 'ISSUER CODE'
WHERE TableName = 'tblStaging';