Insert a partir de un select

From: Luis <esteban(at)princesa(dot)pri(dot)sld(dot)cu>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Insert a partir de un select
Date: 2010-04-30 17:21:28
Message-ID: op.vbzjt2e4tyhnfo@samaria
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Hola a todos,

Necesito hacer un insert a partir de un select, algo así como,

tengo estas dos tablas y necesito hacer un insert masivo en la segunda a
partir de la primera, he probado esto pero nada y tengo un poco premura,
necesito ayuda.

INSERT INTO mayor
(fecha,id_usu,id_cpa,id_uni,cuenta,subcuenta,id_ncu,saldo) VALUES IN
(SELECT fecha,id_usu,id_cpa,id_uni,cuenta,subcuenta,id_ncu,saldo_final
WHERE fecha'una_fecha_dada');

/*
* mayor
*/

CREATE TABLE mayor(
id_may serial UNIQUE PRIMARY KEY,
fecha timestamp DEFAULT now(),
id_usu int REFERENCES usuarios(id_usu),
id_cpa int REFERENCES centros_pagos(id_cpa),
id_uni int REFERENCES unidades(id_uni),
cuenta varchar(3) NOT NULL,
subcuenta varchar(4) DEFAULT '0000',
id_ncu int REFERENCES naturaleza_cuentas(id_ncu),
descripcion varchar(50) NOT NULL,
saldo_inicial numeric(10,2) DEFAULT 0.00 CONSTRAINT
saldo_inicial_positivo CHECK(saldo_inicial>=0),
debito numeric(10,2) DEFAULT 0.00 CONSTRAINT debito_positivo
CHECK(debito>=0),
credito numeric(10,2) DEFAULT 0.00 CONSTRAINT credito_positivo
CHECK(credito>=0),
saldo_final numeric(10,2) DEFAULT 0.00
);

/*
* mayor_historia
*/

CREATE TABLE mayor_historia(
id_mhi serial UNIQUE PRIMARY KEY,
fecha timestamp DEFAULT now(),
id_usu int REFERENCES usuarios(id_usu),
id_pro int REFERENCES provincias(id_pro),
id_mun int REFERENCES municipios(id_mun),
id_cpa int REFERENCES centros_pagos(id_cpa),
id_uni int REFERENCES unidades(id_uni),
cuenta varchar(3) NOT NULL,
subcuenta varchar(4) DEFAULT '0000',
id_ncu int REFERENCES naturaleza_cuentas(id_ncu),
saldo numeric(10,2) DEFAULT 0.00
);

--
Saludos,

Luis

--

Este mensaje le ha llegado mediante el servicio de correo electronico que ofrece Infomed para respaldar el cumplimiento de las misiones del Sistema Nacional de Salud. La persona que envia este correo asume el compromiso de usar el servicio a tales fines y cumplir con las regulaciones establecidas

Infomed: http://www.sld.cu/

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Julio Cesar Rodriguez Dominguez 2010-04-30 17:27:37 Re: Insert a partir de un select
Previous Message Javier Lugo Porras 2010-04-30 16:59:16 Postgres 8.4 con ADODB.DLL en windows 7 32 bits.