我遇到了SQL查询(Microsoft Access)的问题,该问题涉及比较两个表中的列和更新
我想比较tableA.com_id
和tableB.com_id
,如果它们相同,请在tableA.check
中使用每个引用tableA.ref_id
tableA
ref_id | com_id |检查
10001 | 20001 |
10002 | 20008 |
10003 | 20005 |
10004 | 20001 |
tableB
ref_id | com_id |
10001 | 20001 |
10004 | 20004 |
10002 | 20008 |
10001 | 20011 |
10001 | 20021 |
期望的输出:
ref_id | com_id |检查
10001 | 20001 | TRUE
10002 | 20008 | TRUE
10003 | 20005 |
10004 | 20001 |
我尝试了很多查询,但是它们不起作用。例如:
UPDATE tableA SET CHECK = 'TRUE'
WHERE tableA.ref_id = (SELECT ref_id FROM tableB)
AND tableA.com_id = (SELECT com_id FROM tableB)
答案 0 :(得分:0)
听起来你应该使用join
:
update tableA
join (tableB on tableA.ref_id = tableB.ref_id and tableA.com_id = tableB.com_id)
set tableA.Check = 'TRUE'