Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Marcello Cruz

Usando UPDATE - entre duas tabelas

Recommended Posts

Pessoal. Mais uma dúvida.

Tenho a tabela TAB1 com as colunas ITEM e QTY e a tabela TAB2 com as colunas ITEM e QTY_ATUAL.

Minha dúvida é:

Quero pegar os dados da TAB1 da coluna QTY e "somar" com a coluna QTY_ATUAL da tabela TAB2.

Preciso usar o UPDATE.

Minha Query tá assim:

UPDATE dbo.TAB2
SET QTY_ATUAL = (SELECT QTY FROM dbo.TAB1)
GO

Sei que tá errado :-D

 

Aguardo a ajuda de vcs!!

 

Valeu.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Neste caso, tem que usar o UPDATE FROM, como um select entre duas tabelas, com inner e tudo mais.

Consegue montar o select entre as duas tabelas?

 

Abçs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bem, ficou assim:

UPDATE dbo.VKC_ITEM
SET QTY_REMAIN = QTY_REMAIN + (SELECT REMAIN_KEYS FROM dbo.VKC_LOG_PEXP)

Mas essa coluna atualiza sempre 5 linhas da coluna QTY_REMAIN. Com isso ocorre o erro -

Msg 512, Level 16, State 1, Line 1

Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression.

The statement has been terminated.

 

Como faria pra atualizar todas as 5 linhas?

 

Obrigado.

 

Bom, no final com a ajuda do BI aqui, ficou assim:

UPDATE VKC_ITEM
set QTY_REMAIN = REMAIN_KEYS
FROM VKC_ITEM a, VKC_LOG_PEXP b
WHERE a.ITEM_PEXP = B.ITEM_PEXP AND 
convert(varchar(10),b.LASTUPDATE,103) = convert(varchar(10),getdate()-1,103)

Funcionando.

 

Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.