Jump to content
Fórum Script Brasil
  • 0

[Dúvida] Insert em uma base dando Select em outra PL/pgsql


ruanramon
 Share

Question

Boa tarde pessoal, estou passando por um tremendo problema que já pesquisei tanto e ainda não solucionei. Estou fazendo um Data Warehouse e estou na etapa do ETL 2, sendo que não estou conseguindo fazer um INSERT avançado pelo PostgreSQL utilizando PL/pgsql, vou dar um exemplo (MySQL) da query de inserção, onde se dá um SELECT numa base de dados (trab_webvendas) e insere em outra base (dm_webvendas). Gostaria muito que alguém conseguisse transcrever esse exemplo utilizando PL/pgsql.

INSERT INTO dm_webvendas.dmCliente (CodCliente, NomeCliente, CargoCliente, EnderecoCliente, CidadeCliente, UfCliente, PaisCliente, ContatoCliente, TipoCliente, FoneCliente, FaxCliente, ObsCliente, VersaoCliente , DtCargaCliente)

SELECT

-- Campos da tabela de Origem

tc.codigo,

IFNULL (tc.nome,'sem nome'), -- Se o nome não for nulo use tc.nome, se for nulo coloque 'sem nome'

IFNULL (tc.cargo,'sem cargo'),

IFNULL (tc.endereco,'sem teto'),

IFNULL (tcid.nome,'sem cidade'),

IFNULL (tcid.uf,'NA'),

IFNULL (tcid.pais,'NA'),

IFNULL (tc.contato,'sem contato'),

IFNULL (tc.tipo,'NA'),

IFNULL (tc.fone,'(XX) XXXX-XXXX'),

IFNULL (tc.fax,'(XX) XXXX-XXXX'),

IFNULL (tc.obs,'sem obs'),

1,

DtAtual -- parâmetro de entrada da procedure

FROM trab_webvendas.TrabCliente tc, trab_webvendas.TrabCidade tcid

WHERE tcid.codigo = tc.cidade and

NOT EXISTS ( SELECT dwc.CodCliente -- não existe na tabela destino

FROM dm_webvendas.dmCliente dwc

WHERE dwc.CodCliente = tc.codigo);

Agradeço de coração quem me der uma luz!

Link to comment
Share on other sites

1 answer to this question

Recommended Posts

  • 0

man isso q você ta falando acho q é um select insert.

Eu já fiz isso em FirebirdSql, não sei se funciona no PostgreSql.

bom... mas fica ai o exemplo:

insert into cadastro2 
 select codigo as codigoCadastro2, 
 f.funcionarios, 
 '999' as causadesligamento, 
 '01.01.2012' as data, 
 'teste' as obs 
 from cadastro1

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Forum Statistics

    • Total Topics
      150.8k
    • Total Posts
      648.7k
×
×
  • Create New...