SQL - Copiar coluna

Publicado por Emiliano Eloi Silva Barbosa em 23/05/2007

[ Hits: 14.248 ]

Blog: http://emilianoeloi.com.br

 


SQL - Copiar coluna



Essa dica mostra como copiar um coluna de uma tabela para a outra, cujos códigos são iguais.

Primeiro gostaria de descrever o ambiente em SQL, observe a seguir:

Criando o usuário "vol":

CREATE USER vol;
CREATEDB NOCREATEUSER;


Criando a base de dados "vivaolinux":

CREATE DATABASE vivaolinux w. WITH OWNER = vol ENCODING = 'SQL_ASCII';

Criando a tabela "produtos_origem_tbl":

Create table "produtos_origem_tbl"(
   "cod_produto" Serial NOT NULL,
   "nome" Varchar,
   "valor" Numeric(9,2),
primary key ("cod_produto")
) With Oids;

ALTER TABLE produtos_origem_tbl OWNER TO vol;


Criando a tabela "produtos_destino_tbl":

Create table "produtos_destino_tbl"(
   "cod_produto" Serial NOT NULL,
   "nome" Varchar,
   "valor" Numeric(9,2),
primary key ("cod_produto")
) With Oids;

ALTER TABLE produtos_destino_tbl OWNER TO vol;


Alimentando a tabela "produtos_origem_tbl":

INSERT
  INTO produtos_origem_tbl
        (cod_produto, nome, valor)
VALUES (10, 'Controle Ps2 Dual', 27.00);
INSERT
  INTO produtos_origem_tbl
        (cod_produto, nome, valor)
VALUES (10, 'Camera Digital', 330.00);
INSERT
  INTO produtos_origem_tbl
        (cod_produto, nome, valor)
VALUES (10, 'Pen Drive 2 Gb ', 55.00);
INSERT
  INTO produtos_origem_tbl
        (cod_produto, nome, valor)
VALUES (10, 'Mp5 Mp4 Mp3 Player', 208.99);


Alimentando a tabela "produtos_destino_tbl":

INSERT
  INTO produtos_destino_tbl
        (cod_produto, nome, valor)
VALUES (10, 'Controle Ps2 Dual', 28.00);
INSERT
  INTO produtos_destino_tbl
        (cod_produto, nome, valor)
VALUES (10, 'Camera Digital', 349.00);
INSERT
  INTO produtos_destino_tbl
        (cod_produto, nome, valor)
VALUES (10, 'Pen Drive 2 Gb ', 60.00);
INSERT
  INTO produtos_destino_tbl
        (cod_produto, nome, valor)
VALUES (10, 'Mp5 Mp4 Mp3 Player', 228.99);


Agora vamos atualizar a coluna "valor" da tabela "produtos_destino_tbl" com os dados contidos na coluna "valor" da tabela "produtos_origem_tbl":

UPDATE produtos_destino_tbl
   SET valor = produtos_origem_tbl.valor
  FROM produtos_origem_tbl
WHERE produtos_destino_tbl.cod_produto = produtos_origem_tbl.cod_produto;


Outras dicas deste autor

MySQL - Recuperar dados em ordem aleatória (randômica)

Leitura recomendada

Alterando senha inicial do PostgreSQL [Ubuntu]

PostgreSQL: Fazendo backup de um servidor inteiro

Criando usuários no PostgreSQL

Ativando acesso remoto ao PostgreSQL 8 no Fedora

Instalação e configuração do Postgresql + Pgadmin3 LocalHost no Fedora

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário