我似乎无法在SQLITE中使用它。
如果某行匹配连接存在,则尝试添加1;如果不存在,则尝试添加0。
我认为代码会为那些匹配的行添加1,但它只是在所有内容中添加1而不管匹配:
update tbl1
SET has_data = 1
where exists(
SELECT *
FROM tbl1
join tbl2 on tbl2.r_num = tbl1.r_num
)
我已经看过一些案例的例子,我无法想出如何写一个在这种情况下可能有用的应用0或1?
感谢您的帮助!
答案 0 :(得分:0)
子查询中的tbl1
是表的一个独立实例,因此如果{{1}中 行 ,那么EXISTS为真匹配。
要引用原始表,只是不要引入另一个表实例:
tbl1
或者,这可以写成:
UPDATE tbl1
SET has_data = 1
WHERE EXISTS (SELECT *
FROM tbl2
WHERE r_num = tbl1.r_num);