首页 > 解决方案 > 从“更新”表更新“主”表,同时忽略空值、空白或空字段

问题描述

我有一个主表,我试图从一个只填充了需要在主表中更新的字段的表中更新,使用唯一的 ID 来确保我只更新匹配的记录。以下是查询的 SQL 字符串的样子:

UPDATE [tblMain] INNER JOIN tblUpdate ON tblMain.UUID = tblUpdate.UUID
SET tblMain.contractName = tblUpdate.contractName
WHERE ((tblUpdate.contractName) IS NOT NULL);

这个想法是只从更新表中提取实际有数据的字段,而忽略 NULL、空白或空的字段。需要明确的是,我想在 tbleUpdate 中包含所有记录,但只更新包含数据的字段。我怎样才能做到这一点?

标签: sqlms-access

解决方案


如果你想在 MS Access 中从另一个表更新一个表,你应该这样做

UPDATE tblMain, tblUpdate 
SET tblMain.contractName = tblUpdate.contractName
WHERE tblMain.UUID = tblUpdate.UUID
  AND tblUpdate.contractName IS NOT NULL

推荐阅读