• Viernes 8 de Noviembre de 2024, 20:47

Autor Tema:  Consulta totalizando entre fechas  (Leído 1888 veces)

matmax

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Consulta totalizando entre fechas
« en: Domingo 23 de Enero de 2011, 11:54 »
0
Buenos dias, y gracias de ante mano por ayudarme. No se si este es el lugar donde poner este post, pero si no lo es pido disculpas. Estoy intentando hacer una consulta que me totalice por un campo numerico "total" dentro de un intervalo de fechas. El problema que tengo es que al mostrarme la consulta me salen todos los registro dentro de ese intervalo de fecha, cuando lo que quiero es que me salga un registro por cliente con el total dentro del intervalo por el que pregunte. Mi consulta hecha con el ms access xp, es esta:

SELECT clientes.NUMERO, clientes.NOMBRE, clientes.APELLIDOS, Sum(pedido.TOTALFACTURA_mov) AS sumadetotalfactura_mov, pedido.FECHA
FROM pedido INNER JOIN clientes ON pedido.NUMERO = clientes.NUMERO
GROUP BY clientes.NUMERO, clientes.NOMBRE, clientes.APELLIDOS, pedido.FECHA
HAVING (((pedido.FECHA) Between #1/2/2010# And #1/20/2010#));

El having es para probar la consulta.
Seria aconsejable jacerlo en lugar de 1 consulta, hacerla en 2?,  es decir, 1º que saque todas las compras del intervalo a una tabla y despues agruparlas por el total?

Un saludo y muchisimas gracias.

Thanatos-chan

  • Miembro MUY activo
  • ***
  • Mensajes: 136
  • Nacionalidad: do
    • Ver Perfil
Re: Consulta totalizando entre fechas
« Respuesta #1 en: Lunes 24 de Enero de 2011, 14:12 »
0
que tal,


por lo que muestra el query, deberia funcionar

Código: SQL
  1.  
  2. SELECT clientes.NUMERO,
  3.             clientes.NOMBRE,
  4.             clientes.APELLIDOS,
  5.             SUM(pedido.TOTALFACTURA_mov) AS sumadetotalfactura_mov,
  6.             pedido.FECHA
  7. FROM pedido INNER JOIN clientes
  8. ON pedido.NUMERO = clientes.NUMERO
  9. GROUP BY clientes.NUMERO, clientes.NOMBRE, clientes.APELLIDOS, pedido.FECHA
  10. HAVING (((pedido.FECHA) BETWEEN #1/2/2010# AND #1/20/2010#));
  11.  
  12.  

pero asi como dices intentalo en 2 querys, algo como

Código: SQL
  1.  
  2. SELECT cli.NUMERO,
  3.             cli.NOMBRE,
  4.             cli.APELLIDOS,
  5.             (SELECT SUM(pedido.TOTALFACTURA_mov) FROM pedidos p
  6.              WHERE p.numero = cli.numero
  7.              AND p.fecha BETWEEN '1/2/2010' ad '1/20/2010'
  8.             )AS sumadetotalfactura_mov,
  9.             pedido.FECHA
  10. FROM clientes  cli
  11.  
  12.  

prodrias chequear, los campos de pedidos y clientes, ya que si la llave es solo el "codigo del cliente" no deberia fallar.
 :hola:
Que es un genio???? yo superare a un genio con trabajo duro, y eso es todo.

matmax

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Re: Consulta totalizando entre fechas
« Respuesta #2 en: Lunes 24 de Enero de 2011, 16:10 »
0
Muchas gracias thanatos me salvaste de una buena. Un saludo.