Club Delphi  
    Paypal   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 16-09-2012
Salnhack Salnhack is offline
Miembro
NULL
 
Registrado: oct 2011
Ubicación: Cuba
Posts: 71
Poder: 16
Salnhack Va por buen camino
Smile

Ya resolvi el error que me daba la consulta SQL, en Access cuando se utiliza mas de una ves INNER JOIN debes agruparlos con parentisis, el codigo sql me quedaria asi

Código SQL [-]
SELECT C.IDCARRO, C.NOCARRO, C.INDICECONS, SUM(DHR.KMRECORRIDO), SUM(CO.CONSUMO)
FROM (((CARRO C  INNER JOIN HOJARUTA HR ON HR.IDCARRO = C.IDCARRO) 
INNER JOIN DESCHOJARUTA DHR ON DHR.IDHOJARUTA = HR.IDHOJARUTA) 
INNER JOIN CONSUMO CO ON CO.IDCARRO = C.IDCARRO) 
WHERE CO.FECHA BETWEEN 01/01/2012 AND 31/01/2012 
GROUP BY C.IDCARRO, C.NOCARRO, C.INDICECONS 
ORDER BY C.IDCARRO


lo he probado pero todavia me esta devolviendo mal los datos
Responder Con Cita
  #2  
Antiguo 16-09-2012
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.714
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Cita:
Empezado por Salnhack Ver Mensaje
Ya resolvi el error que me daba la consulta SQL, en Access cuando se utiliza mas de una ves INNER JOIN debes agruparlos con parentisis
Vaya, las cosas de microsoft, haciendo las cosas diferentes a los demás

Cita:
Empezado por Salnhack Ver Mensaje
lo he probado pero todavia me esta devolviendo mal los datos
¿Mal?, ¿qué quieres decir?
Responder Con Cita
  #3  
Antiguo 17-09-2012
Salnhack Salnhack is offline
Miembro
NULL
 
Registrado: oct 2011
Ubicación: Cuba
Posts: 71
Poder: 16
Salnhack Va por buen camino
y en cuento a los resultados de la sentencia, me devuelve el mismo resultado que en mi consulta inicial, lo que hemos hecho no es mas que convertir mi consulta utilizando INNER JOIN.
Responder Con Cita
  #4  
Antiguo 17-09-2012
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.714
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
A ver, la pregunta exacta es:
Cita:
necesito hacer una consulta que me selecione por carro los km recorrido y el consumo en un rango de fecha 1/9/2012-30/9/2012
ahora vuelvo...
Responder Con Cita
  #5  
Antiguo 17-09-2012
hoyosfelix hoyosfelix is offline
Miembro
 
Registrado: ago 2010
Ubicación: San Antonio, Paraguay
Posts: 38
Poder: 0
hoyosfelix Va por buen camino
Respuesta "Ayuda con consulta"

Hola, buen día.

Esta consulta preparada en el diseñador de consulta del Access está probada y funciona; hecha de acuerdo a las especificaciones de la tabla dada en el primer mensaje de este tema.

La tarea final es implementarlo en el Delphi.

Insisto en que el form se coloquen 2 componentes TDateTimePicker o similar; en todo caso pueda pasar la fecha en formato que Access reconozca.

Código SQL [-]
SELECT C.IDCARRO, C.NOCARRO, C.indececons, Sum(DHR.KMRECORRIDO) AS SumaDeKMRECORRIDO, Sum(CO.CONSUMO) AS SumaDeCONSUMO
FROM CARRO AS C, HOJARUTA AS HR, DESCHOJARUTA AS DHR, CONSUMO AS CO
WHERE (((CO.FECHA) Between [:FECHA1] And [:FECHA2])
  AND  HR.IDCARRO = C.IDCARRO
  AND DHR.IDHOJARUTA = HR.IDHOJARUTA 
  AND CO.IDCARRO = C.IDCARRO)
  
GROUP BY C.IDCARRO, C.NOCARRO, C.indececons
ORDER BY C.IDCARRO;

Espero que sea de ayuda.

Saludos.
Responder Con Cita
  #6  
Antiguo 17-09-2012
Salnhack Salnhack is offline
Miembro
NULL
 
Registrado: oct 2011
Ubicación: Cuba
Posts: 71
Poder: 16
Salnhack Va por buen camino
He probado la consulta en access se ejecuta sin ningun error aunque no me devuelve ningun valor , pero cuando la ejecuto desde el delphi me tira un error que dice ('Pocos Parametros. se esperaba 3.')
Responder Con Cita
  #7  
Antiguo 17-09-2012
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.714
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Evidentemente algo está mal en tu código delphi.
Responder Con Cita
  #8  
Antiguo 16-09-2012
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.714
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Cita:
Empezado por Salnhack Ver Mensaje
lo he probado pero todavia me esta devolviendo mal los datos
Código Delphi [-]
WHERE CO.FECHA BETWEEN 01/01/2012 AND 31/01/2012
Las fechas en las sql van entre comillas, aunque son fechas.
Código SQL [-]
WHERE CO.FECHA BETWEEN '01/01/2012' AND '31/01/2012'
Responder Con Cita
  #9  
Antiguo 17-09-2012
Salnhack Salnhack is offline
Miembro
NULL
 
Registrado: oct 2011
Ubicación: Cuba
Posts: 71
Poder: 16
Salnhack Va por buen camino
en access el parametro de fecha se pone así, sino lo reconoce como texto
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
Ayuda con consulta SQL n03l SQL 4 18-04-2007 23:03:40
Ayuda con consulta raco Varios 6 06-04-2005 03:14:25
Ayuda con consulta SQL tgsistemas SQL 9 18-02-2004 17:14:07
Ayuda con consulta JorgeBec SQL 7 21-10-2003 21:25:16
ayuda en consulta bismarito Firebird e Interbase 1 29-07-2003 01:40:45


La franja horaria es GMT +2. Ahora son las 02:49:47.


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