由于某种原因,以下查询在sqlite中返回以下错误消息。我通常使用跨表连接,但由于这不适用于sqlite中的更新,所以它是一个子查询。这可能是一个疲惫的眼睛,但我似乎无法看到这个问题。任何帮助表示赞赏。
靠近“。” :语法错误
UPDATE
tbl1
set tbl1.[some_field1] = (SELECT tbl2.[some_fieldA]||substr(tbl2.[some_fieldB],1,2)
FROM tbl2
WHERE tbl2.[some_fieldC] = tbl1.[some_field2])
WHERE
tbl1.[file_name] = "some_arbitrary_file.txt"
AND tbl1.[some_field1] IS NULL
OR tbl1.[some_field1] = "";
答案 0 :(得分:1)
UPDATE
命令只处理一个表,因此永远不必为要更新的列指定表。
将tbl1.
放在SET
:
... SET [some_field1] = ...