Eu tentei :
UPDATE closure JOIN item ON ( item_id = id )
SET checked = 0
WHERE ancestor_id = 1
E:
UPDATE closure, item
SET checked = 0
WHERE ancestor_id = 1 AND item_id = id
Ambos funcionam com MySQL, mas me dão um erro de sintaxe no SQLite.
Como posso fazer este UPDATE / JOIN funcionar com o SQLite versão 3.5.9?
sqlite
join
sql-update
e-satis
fonte
fonte
Respostas:
Você não pode. SQLite não suporta JOINs em instruções UPDATE .
Mas, você provavelmente pode fazer isso com uma subconsulta:
Ou algo assim; não está claro exatamente qual é o seu esquema.
fonte
update foos join bars on bars.foo_id = foos.id set foos.bar_id = bars.id
, remover a coluna bars.foo_id ... como isso pode ser feito no SQLite? Se alguém souber, com certeza posso usar.Você também pode usar REPLACE e, em seguida, usar a seleção com junções. Como isso:
fonte