Copiar dados entre tabelas Microsoft SQL

Written by oraculum. Posted in Frameworks / DBAs, SQL | Tagged: ,

Copiar dados entre tabelas Microsoft SQL

Published on Maio 22, 2010 with 2 Comentários

Precisei hoje de fazer uma mudança de dados de uma tabela para outra, coisa simples de se fazer no sql 2005 ou 2008 na verdade acho que essa query funciona pra maioria dos bancos:

1
2
INSERT INTO Cliente_Credito (Cliente_Credito.Codigo)
SELECT Codigo FROM Cliente WHERE (Cidade = 'Volta Redonda')

Lembrando que na primeira linha você vai listar as colunas da tabela que receberá os dados e na segunda linha você faz um select no banco para os dados de origem por exemplo se você quiser pode retirar todos os clientes da tabela cliente e passar para a credito mas apenas os da cidade de Volta Redonda, ou deixar sem WHERE daí o SQL vai importar todos os registros.

Se por acaso as duas tabelas tenham os mesmo campos e você queira copiar os dados entre elas faça o seguinte:

INSERT INTO tabela1
SELECT * FROM tabela2

Aproveitando caso você precise de fazer uma atualização de dados entre tabelas, ou seja pegar um registro da tabela A jogar num outro registro correspondente na tabela B:

1
2
3
4
5
UPDATE Cli_For_Credito
   SET
      Estado_Civil = Cli_For.Fax, Tipo_Residencia = Cli_For.Complemento
FROM Cli_For
WHERE Cli_For.Codigo = Cli_For_Credito.Codigo

Acerca oraculum

Browse Archived Articles by oraculum

2 Comentários

There are currently 2 Comentários on Copiar dados entre tabelas Microsoft SQL. Perhaps you would like to add one of your own?

  1. Muito Legal esse update entre tabelas, havia tentado de algumas formas diferente, todas sem sucesso até que encontrei seu artigo.
    Parabéns.

    [Responder]

  2. MUITO OBRIGADO

    [Responder]

Leave a Comment