PDA

Ver la Versión Completa : Problema con consulta de SQL


Durbed
30-09-2004, 14:35:03
Hola, tengo una tabla que tiene entre otros dos campos:
TIMPORTE --> Que tiene el tipo de imoprte, puede ser A ó B.
IMPORTE --> Que tiene el importe en si.

Quiero hacer una consulta para mostrar en delphi, donde me desglose el importe en dos columnas, es decir, una columna con el importe A y otro con el importe B.

Gracias.

Neftali [Germán.Estévez]
30-09-2004, 15:52:05
Quiero hacer una consulta para mostrar en delphi, donde me desglose el importe en dos columnas, es decir, una columna con el importe A y otro con el importe B.Bueno, es una solución poco eficiente y no se si funcionará en todos los SGBD's; Sería algo así:


select Importe as IMP_A, '' as IMP_B from Tabla where TIMPORTE='A'
UNION
select '' as IMP_A, Importe as IMP_B from Tabla where TIMPORTE='B'

jncrls
30-09-2004, 21:41:39
También lo puedes hacer con un stored procedure, según dicen se ejecutan más rápido y en este caso haces una sola pasada a la tabla.


create procedure XXX returns (
IMP_A double precision,
IMP_B double precision)
as
declare variable Tipo varchar(1);
begin
for select TIMPORTE, IMPORTE from Tabla into :Tipo, :IMP_A
do begin
if (Tipo = 'B') then begin
IMP_B = IMP_A;
IMP_A = null;
end
else
IMP_B = null;
end
end