Update usando join

SQL

MySQL

24/09/2015

Bom dia à todos, estou tentando realizar um update usando Join, mas não da certo esta dando erro, estou colocando aqui a query para analise.
Hoje o cod_local é igual a 100 e quero passar ele para o local 09, estou usando outra tabela pois tenho que pegar itens com ies_tip_item = 'F'. tenho por volta de uns 10 mil itens para fazer essa troca ok.

UPDATE estoque_lote c
SET c.cod_local = '09'

JOIN item d
ON(d.cod_empresa = c.cod_empresa)
AND(d.cod_item = c.cod_item)

WHERE c.cod_empresa = '02'
AND c.cod_local = '100'
AND d.ies_tip_item = 'F'
AND d.cod_empresa = '02'
Dagoberto Neto

Dagoberto Neto

Curtidas 0

Respostas

Jothaz

Jothaz

24/09/2015

UPDATE  c
SET c.cod_local = '09'

FROM estoque_lote c

JOIN item d
ON(d.cod_empresa = c.cod_empresa)
AND(d.cod_item = c.cod_item)	

WHERE c.cod_empresa = '02'
AND c.cod_local = '100'
AND d.ies_tip_item = 'F'
AND d.cod_empresa = '02'
GOSTEI 0
Dagoberto Neto

Dagoberto Neto

24/09/2015

Jothaz, bom dia tudo bem.

Acabei de conseguir de uma outra forma sem Join, mas mesmo assim obrigado, vou encerrar o tópico aqui. Consegui da seguinte forma.

update estoque_lote a
SET a.cod_local = '09'
WHERE a.cod_item = (SELECT b.cod_item FROM item b WHERE b.cod_empresa = '02' AND b.ies_tip_item = 'F' AND b.cod_empresa = a.cod_empresa AND b.cod_item = a.cod_item)
AND a.cod_local = '100'
GOSTEI 0
POSTAR