我正在ms access中使用sql。我创建了一些查询,分析代码是否存在于两个不同的excel电子表格中,并生成一个新表,在每次比较时通知“是”或“否”。
但是,有时某个代码只出现在一个表中,但过了一段时间(当有人更新excel电子表格时),该代码就会出现。
我已经有了一个进行比较的查询,但是它不适用于在进行比较之后在表中引入的那些代码。
因此,我想创建一个使用update的查询,检查给定的代码现在是否在两个表中,如果在,它将更新我的表的比较列。
这是我为此创建的查询,但它不起作用:
UPDATE
comparationTable
SET
col_comp = IIf(spreadSheet1.code = spreadSheet2.code),"Yes","******No******")
WHERE
code1 = code2;
注意:code1和code2是仅分别显示来自excel电子表格1和excel电子表格2的代码的列。
编辑:以下是两个电子表格(sp1、sp2)和比较表的图像:
1条答案
按热度按时间hyrbngr71#
括号太多-必须始终成对。字段名不正确。where子句不合适-code2中没有值的记录不会用任何值更新。
UPDATE comparationTable SET col_comp2 = IIf(code1 = code2, "Yes", "******No******")