Senhores, gostaria de atualizar minha tabela receber.id_cliente com o conteúdo do pessoa.id, (trouxe de uma importação externa), mas está dando erro de sintaxe, quem pode me ajudar?
UPDATE receber
SET data_alteracao
= now(), id_cliente
= (pessoa.id)
FROM receber
INNER JOIN pessoa
ON pessoa.codigo
= receber.codigo
;
Está apresentando erro 1064
Estou utilizando o mysql 5.6.35-win32
Erro é:
You have an erro in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ´FORM receber
INNER JOIN pessoa
ON pessoa.codigo
= receber.codigo
at line 1
Veja se esses exemplos te ajudam:
update tabela1 t1
inner join tabela2 t2 b on t1.codigo = t2.codigo
set data = Now(), campo1 = t2.campo2
ou
UPDATE tabela
SET data = Now(),
campo1 = (SELECT campo2
FROM tabela2 t2
WHERE t2.codigo = tabela.codigo)
Conseguir resolvendo da seguinte forma
UPDATE receber,pessoa SET receber.data_alteracao = now(), receber.id_cliente = pessoa.id WHERE pessoa.codigo = receber.codigo;
Muito obrigado pela atenção!
Na versão 5.5 em diante, a sintaxe FROM no UPDATE não aceita!