none
Update em massa RRS feed

  • Pergunta

  •  Olá a todos!!!

    tenho a seguinte situação:

    uma tabela ENDERECO com os seguintes campos:

     - A1030EnderecoId
     - A1030Tipo
     - A1030Endereco
     - A1030Bairro
     - A1030Cidade
     - A1030UF
     - A1030CEP
     - A1030Timestamp
     - A1030Numero
     - A1030Complemento
     - A1147CidadeId

    Nesta tabela existem muitos valores incorretos de cidades, ufs e bairros.

    ***************************************************************************
    Eu tenho uma base dos CORREIOS onde tem uma tabela CEPs com os seguintes campos:

     - UF_SIGLA
     - UF_NOME
     - CIDADE_NOME
     - CIDADE_CEP
     - BAIRRO_NOME
     - LOGRADOURO
     - LOGRADOURO_COMPLEMENTO
     - CEP

    Essa tabela tem os dados de bairro, cidade, uf e cep corretos. Eu quero fazer um update na tabela ENDERECO nos campos:
    A1030Bairro,  A1030Cidade, A1030UF, A1030CEP, corrigindo essas linhas a partir de um SELECT na tabela CEPs comparando o campo CEP, ou seja, onde o campo CEP da tabela CEPs for igual ao campo A1030CEP na tabela ENDERECO, fazer o UPDATE da seguinte forma:

    tabela CEPs campo BAIRRO_NOME  --> tabela ENDERECO campo A1030Bairro
    tabela CEPs campo CIDADE_NOME  --> tabela ENDERECO campo A1030Cidade
    tabela CEPs campo UF_SIGLA          --> tabela ENDERECO campo A1030UF

    Será que podem me ajudar, não sei como montar esse script. Desde já agradeço.

    []´s

    PH.
    quarta-feira, 11 de fevereiro de 2009 14:04

Respostas

Todas as Respostas

  • Olá PH,

    Com uma dúvida tão bem explicada, acho que fica fácil fácil. Tente o seguinte

    UPDATE ENDERECO SET 
        A1030Bairro = BAIRRO_NOME,  
        A1030Cidade = CIDADE_NOME,  
        A1030UF = UF_SIGLA  
    FROM 
        ENDERECO  
        INNER JOIN CEPs ON ENDERECO.CEP = CEPs.CEP 

    [ ]s,

    Gustavo Maia Aguiar
    http://gustavomaiaaguiar.spaces.live.com

    Importe arquivos XML com o CLR
    http://gustavomaiaaguiar.spaces.live.com/blog/cns!F4F5C630410B9865!346.entry


    Classifique as respostas. O seu feedback é imprescindível
    • Marcado como Resposta phscuritiba quarta-feira, 11 de fevereiro de 2009 16:04
    quarta-feira, 11 de fevereiro de 2009 14:12
  • Caro Gustavo,

    mais uma vez muito obrigado pelo esclarecimento e ajuda, quem sabe um dia eu chegue perto do nível de vocês. Estou estudando pra isso. :)

    []´s

    PH.
    quarta-feira, 11 de fevereiro de 2009 16:05
  • Olá PH,

    Você pode sim. Há alguns anos atrás apareceu uma questão idêntica a essa na minha prova de certificação e eu errei. Hoje fico feliz de saber perfeitamente não só uma, mas quatro formas diferentes de responder.

    Continue estudando. Será bom se futuramente tivermos mais colaboradores.

    [ ]s,

    Gustavo Maia Aguiar
    http://gustavomaiaaguiar.spaces.live.com

    Importe arquivos XML com o CLR
    http://gustavomaiaaguiar.spaces.live.com/blog/cns!F4F5C630410B9865!346.entry


    Classifique as respostas. O seu feedback é imprescindível
    quarta-feira, 11 de fevereiro de 2009 16:13
  • PH,

    Com certeza meu amigo, você vai conseguir, não pense que somos os donos da verdade e do conhecimento, lógicamente procuramos estudar muito e viver a área de banco de daos mais especificamente o SQL Server intensamente.

    Concordo plenamente com o Gustavo, a sua dúvida foi muito bem explicada, isso facilita muito, inclusive a minha sugestão também seria a mesma indicada pelo Gustavo, isso para mim, também é muito importante, pois reconheço que o Gustavo é um dos maiores profissionais de SQL Server que conheci, como também o Marcelo Colla, Nilton Pinheiro e muitos outros.

    Fico muito contente em saber também que estou conseguindo contribuir de maneira modesta, como exemplo para os demais participantes, e me sinto honrado de contar com a sua presença no fórum.

    Obrigado.


    Pedro Antonio Galvão Junior - MVP - Windows Server System - SQL Server/Coordenador de Projetos/DBA
    quarta-feira, 11 de fevereiro de 2009 18:38