PostgreSQL - cursor que recorre tabla

   
Vista:

cursor que recorre tabla

Publicado por Crezh (1 intervención) el 15/05/2013 18:08:33
Hola! Tengo que hacer una función en la que un cursor recorra la tabla de clientes (que esta relacionada con la tabla de facturas por el ID_CLIENT) y mirar si esta exento de iva o no, y mirar que iva tiene (base4, base 10, 21 mirando si es 0 o esta lleno el campo) y guardarlo todo en monto_total.

Después en monto_descompte guardar monto_total con el descuento por defecto del cliente.

Agradecería muchísimo que alguien me dijese como comenzar por lo menos....
GRACIAS!

CREATE TABLE clients (
codi_client character varying(9),
nom_client character varying(100),
direccio character varying(127),
pais character varying(50) DEFAULT 'Espanya',
cp character varying(5),
contacte character varying(100),
telefon integer,
email character varying(127),
paga_a_dies smallint,
data_alta date,
limit_credit integer,
descompte_per_defecte float,
primary key(codi_client)
);


CREATE TABLE factura (
codi_factura serial,
codi_client character varying(9),
data_factura date DEFAULT current_date,
descripcio text,
data_ingres date,
base4 real,
base10 real,
base21 real,
exempt_iva boolean NOT NULL,
percentatge_descompte real,
monto_descompte real,
monto_total real,
venedor character varying(59),
mida_enviament contenidor,
primary key(codi_factura),
foreign key(codi_client) references clients(codi_client)
);



COPY clients (codi_client, nom_client, direccio, pais, cp, contacte, telefon, email, paga_a_dies, data_alta, limit_credit, descompte_per_defecte) FROM stdin;
12345678A Raquel Sanchez C/Industria 6 \N 08080 RaquelSanchez 930123456 rsan@…
23456789B Ferran Ramirez C/Escorxador 23 Andorra AD400 Ferran Ramirez 376823456 fermi@andorra.ad 0 201…
A34567891 Movistar Paseo de la Castellana 365 Espa¤a 28080 Francisco Jos‚ P‚rez 1004 movistar@movistar.es 30 200…
P4305000D Ajuntament Cornudella de Montsant C/Conte de Rius 10 Espanya 43360 Pepita Polvora 977561416 aj.cornudella@altanet.…
\.

COPY factura (codi_factura, codi_client, data_factura, descripcio, data_ingres, base4, base10, base21, exempt_iva, percentatge_descompte, monto_descompte, monto_total, venedor, mida_enviament) FROM stdin;
1 12345678A 2012-08-08 Factura per canvi de varies peces \N \N \N 325 f \N \N 429.549988 Ma…
2 23456789B 2012-12-28 font d'alimentaci¢ per pujar la tensi¢ \N \N \N 25 f \N \N 30.25 Manel …‡
3 A34567891 2012-06-13 Substituci¢ dels equips del departament de recursos humans \N \N \N 41963.5781 f \N \N 50755…
4 P4305000D 2012-12-31 Canvi de servidor \N \N \N 555.25 f \N \N 671.25 …
\.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder