Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 13-04-2005
Avatar de sitrico
[sitrico] sitrico is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Caracas, Venezuela
Posts: 295
Poder: 21
sitrico Va por buen camino
Unir una tabla consigo misma

Tengo una tabla (DBE) con la estructura

ID (autoInc)
Codigo
Descripcion
Monto

Contiene varios registros para el mismo código y lo que quiero es totalizarlos pero obteniendo 2 columnas de monto DEBE (>= 0) y (HABER < 0)

puedo obtener una columna con:

Código SQL [-]
Select Codigo, SUM(Monto) Total FROM "TABLA"
Group by Codigo

Estoy tratando de unir las dos tablas con:

Código SQL [-]
select Codigo, SUM(a.Monto), SUM(b.Monto)  from "TABLA" A, "TABLA" B
Where a.id=b.id 
Group By Codigo

Como hago para que la tabla "A" sólo tenga los valores >= 0 y la "B" los < 0

Salu2 y Gracias
__________________
Sitrico
Responder Con Cita
  #2  
Antiguo 18-04-2005
Avatar de fjcg02
[fjcg02] fjcg02 is offline
Miembro Premium
 
Registrado: dic 2003
Ubicación: Zamudio
Posts: 1.410
Poder: 22
fjcg02 Va camino a la fama
Dependiendo de la BBDD que utilices, se puede hacer lo siguiente:

SQL Server:
Código:
Select Codigo, 
        SUM(case Monto when >=0 then Monto else 0 ) as Debe,
        SUM(case Monto when < 0 then Monto else 0 ) as Haber
FROM "TABLA"
Group by Codigo
Access:

Código:
Select Codigo, 
        SUM(iif (Monto >=0; Monto;0 )) as Debe,
        SUM(iif( Monto < 0; Monto; 0 )) as Haber
FROM "TABLA"
Group by Codigo

Y para otros sistemas de BBDD será parecido; te remito a la ayuda del que utilices.

De todas maneras no he comprobado el código, por si lo utilizas.

Espero que te ayude.

Un saludo
__________________
Cuando los grillos cantan, es que es de noche - viejo proverbio chino -

Última edición por fjcg02 fecha: 18-04-2005 a las 15:31:55.
Responder Con Cita
  #3  
Antiguo 19-04-2005
Avatar de sitrico
[sitrico] sitrico is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Caracas, Venezuela
Posts: 295
Poder: 21
sitrico Va por buen camino
Gracias por responder

Por ahora estoy usando el BDE (para algunas pruebas y definición de las tablas) pero en la aplicación probablemente use firebird. (es posible que se instale con otro BBDD)

Creo que por razones de rendimiento y compatibilidad voy a usar 2 campos para el monto (debe y haber) aunque no me he decidido todavía.
__________________
Sitrico
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 13:01:56.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi