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 02-02-2008
Avatar de salvica
salvica salvica is offline
Miembro
 
Registrado: mar 2004
Ubicación: Albacete (España) ... En un lugar de la Mancha ...
Posts: 304
Poder: 21
salvica Va por buen camino
Unhappy Consulta ¿en blanco?

Hola de nuevo
Intento hacer una consulta de una tabla a la que se le deben añadir los totales de otras dos.

Las estructuras son las siguientes:
Código:
Tabla RECIBOS
=============
      ID_CLAVE -------> identificador del recibo (único)
      ... -----> otros datos del recibo

Tabla INGRESOS
==============
      ID_INGRESO -----> identificador del registro
      ID_RECIBO ------> recibo al que pertenece
      CONCEPTO -------> descripción del ingreso (no lo utilizo)
      CANTIDAD -------> real
      IVA ------------> integer
      RETENCION ------> integer
      TOTAL ----------> real

Tabla GASTOS
============
     (la misma estructura que INGRESOS)
La consulta debe sacar los datos del recibo y los totales de los ingresos y gastos para ese recibo determinado
Código Delphi [-]
SELECT recibos.ID_CLAVE, recibos.ID_INQUILI, 
       recibos.FULL_NAME, recibos.FULL_DIR, recibos.LOCALIDAD, recibos.PROVINCIA, 
       SUM(ingresos.CANTIDAD) AS ING_CANTIDAD,
       SUM(ingresos.CANTIDAD*ingresos.IVA/100) AS ING_IVA,
       SUM(ingresos.CANTIDAD*ingresos.RETENCION/100) AS ING_RETENCION,
       SUM(ingresos.TOTAL-ingresos.CANTIDAD) AS ING_TOTAL, 
       SUM(gastos.CANTIDAD) AS GAST_CANTIDAD,
       SUM(gastos.CANTIDAD*gastos.IVA/100) AS GAST_IVA,
       SUM(gastos.CANTIDAD*gastos.RETENCION/100) AS GAST_RETENCION,
       SUM(gastos.TOTAL-gastos.CANTIDAD) AS GAST_TOTAL
  FROM (recibos INNER JOIN ingresos ON recibos.ID_CLAVE = ingresos.ID_RECIBO) INNER JOIN gastos ON recibos.ID_CLAVE = gastos.ID_RECIBO
 WHERE recibos.ID_CLAVE="0000000001"
Me daba un erro que decía:
Ha intentado ejecutar una consulta que no incluye la expresión especificada ID_CLAVE como parte de una función de agregado

lo solucioné añadiendo un GROUP BY a la consulta
Código Delphi [-]
 GROUP BY recibos.ID_CLAVE, recibos.ID_INQUILI, recibos.FULL_NAME, recibos.FULL_DIR, recibos.LOCALIDAD, recibos.PROVINCIA
Ahora el problema es que no me muestra datos
Responder Con Cita
  #2  
Antiguo 02-02-2008
Avatar de salvica
salvica salvica is offline
Miembro
 
Registrado: mar 2004
Ubicación: Albacete (España) ... En un lugar de la Mancha ...
Posts: 304
Poder: 21
salvica Va por buen camino
Talking Tema cerrado (por ahora)

Hola
Me he dado cuenta que la tabla de gastos esta vacia por lo que no puedo hacer un INNER JOIN, sino que debo hacer un LEFT JOIN en su lugar.

Saludos
salvica
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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Blanco y Negro chona API de Windows 0 31-08-2006 17:58:38
DBGrid en blanco después de consulta SQL. DarkByte Conexión con bases de datos 20 26-10-2005 23:45:21
dblookcombobox en blanco Debian Conexión con bases de datos 2 26-03-2005 16:46:04
Total en blanco alcides SQL 5 06-08-2004 16:43:10
consulta con parametros en blanco merlin SQL 2 02-12-2003 17:13:20


La franja horaria es GMT +2. Ahora son las 00:52:57.


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