Pular para o conteúdo principal

Update com Join no MySQL

Como fazer um update em uma tabela do MySQL, com base no valor de um campo de outra tabela com a qual essa se relaciona? Veja o modelo a seguir:

update TabelaQueDesejaAtualizar, TabelaComAQualVaiRelacionar
set TabelaQueDesejaAtualizar.CampoParaAtualizar = TabelaComAQualVaiRelacionar.CampoComValorDesejado
where TabelaQueDesejaAtualizar.CampoParaRelacionar = TabelaComAQualVaiRelacionar.CampoParaRelacionar;


Exemplo:

update Funcionario, PessoaFisica
set Funcionario.codPessoa = PessoaFisica.codPessoa
where Funcionario.codPessoaFisica = PessoaFisica.codPessoaFisica;

Considerando as tabelas Funcionário e PessoaFisica, atribui ao campo codPessoa na tabela Funcionario o valor do campo codPessoa da tabela PessoaFisica, levando em conta que as tabelas Funcionario e PessoaFisica possuem um relacionamento por meio do campo codPessoaFisica existente nas duas tabelas. Desta forma, na tabela Funcionario, no campo codPessoa, teremos o mesmo valor deste campo no registro correspondente na tabela PessoaFisica.
Claro que esse campo codPessoa na tabela Funcionario não faz nenhum sentido e é totalmente redundante, sendo que o mesmo existe na tabela PessoaFisica. O exemplo foi apenas para mostrar como funciona um update com “join” no MySQL, e que deve funcionar em outros bancos. Eu lembro que no SQL Server havia uma forma diferente de se fazer isso, mas não lembro exatamente como.

Fonte:http://manoelcampos.com/2009/03/22/update-com-join-no-mysql/

Comentários

+ Vistas

Sistemas Operacionais - 5º Período.

By: Ariadne Gomes. Exercícios fixação Sistemas Operacionais 1.      Defina os seguintes estados de um processo: Estado de execução: o processo está sendo executado em um processador. Estado de pronto: o processo poderia ser executado em um processador se houvesse algum disponível. Estado bloqueado: o processo está aguardando a ocorrência de algum evento para prosseguir. 2.      Liste abaixo serviços fundamentais aos processos prestados pelos Sistemas Operacionais. Criam processos, destroem processos, retomam processos, mudam a prioridade de um processo, bloqueiam processos, acordam(ativam) processos, despacham processos e capacitam os processos à comunicação interprocessos. 3.      O que significa Estados de um Processo? Significa que um processo passa por uma série de estados de processo distinto, são eles: Estado de execução: o processo está sendo executado em um processador. Estado de pronto: o ...

Princípios de Análise e Projetos de Sistemas com UML

Princípios de Análise e Projeto de Sistemas com UML - 2ª Edição - Eduardo Bezerra Baixe Aqui o Livro. Sistemas De Informação.

A Importância do Controle de Estoques para o Sucesso do Seu Negócio

O controle de estoques é um processo crucial para qualquer empresa que lida com produtos físicos, independentemente do seu porte ou segmento de atuação. Ele garante a visibilidade completa sobre a movimentação de itens, desde a entrada no armazém até a venda para o cliente final. Mas qual a real importância desse processo? 1. Otimização do Capital de Giro: Estoque excessivo: Capital parado, sem gerar retorno financeiro, além de custos extras com armazenagem e depreciação dos produtos. Estoque insuficiente: Perda de vendas, insatisfação dos clientes e possíveis danos à reputação da marca. O controle de estoques eficaz encontra o equilíbrio ideal, evitando esses problemas e liberando recursos para investimentos mais estratégicos. 2. Redução de Custos: Combate à obsolescência: Identificação e descarte de produtos com baixa rotatividade, evitando prejuízos. Negociação com Fornecedores: Poder de barganha para obter melhores preços e prazos de pagamento, otimizando o custo das compr...