Explico Tengo la Tabla Ventas, Gastos y Depositos las cuales relaciono mediante el campo fecha, nombre de farmacia, ya que no puedo relacionarlos mediante su id ya que las tablas pueden tener N registros relacionados.
Haho la sig consulta, utilizando tambien la fx Sum para sumar los campos de gastos y depositos pertenecientes a las ventas de la farmacia y con un rengo de fechas. que cumplan con la condicion.
Código MySQL:
Ver original
ventas.fecha, usuario_TM, ventas_TM, usuario_TV, ventas_TV, /*Utilizo los case ya que el valor puede ser nulo, tambien por que cada registro se me multiplica por el numero de registros de la tabla a a unir*/ END, between '2013-06-25' AND '2013-06-27' AND gastos.farmacia=' EJEMPLO' AND gastos.fecha between '2013-06-25' AND '2013-06-27' AND depositos.farmacia=' EJEMPLO' AND depositos.fecha between '2013-06-25' AND '2013-06-27' GROUP BY ventas.fecha ORDER BY ventas.fecha ASC;
Es una consulta algo larga, me funciona bien pero sola mente cuando hay 1 registro de cada tabla que cumple la condicion, si ingreso mas registros por ejemplo de gastos de ese dia y de esa farmacia se me altera o multiplica la suma de depositos. y no se por que??? tambien si no hay registros de la tabla por qjemplo depositos no me arroja nigun resultado de ventas y gastos ya que esta si contienen informacion... Alguien que me de una idea