Ver Mensaje Individual
  #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
Reputación: 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