MySQL - Select a Periodo que no existe

 
Vista:
sin imagen de perfil

Select a Periodo que no existe

Publicado por Matias (48 intervenciones) el 08/08/2011 01:27:50
Hola como estan?Esta es mi consulta sql

1
2
3
4
5
select count(v.codventa) ventas, concat(month(v.fecha) , '-', year(v.fecha)) mes, year(v.fecha) ano
 from ventas v
 where v.fecha between '20100101' and '20111225'
 group by month(v.fecha), year(v.fecha)
 order by year(v.fecha),month(v.fecha)


Devuelve las cantidades de ventas por mes en un rango de fecha pero el mes que no tienen ventas no lo muestra entonces lo que necesito es lograr que en la consulta sql tambien me salga el periodo que tiene como cantidad el valor 0 (cero)

Muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Select a Periodo que no existe

Publicado por Gonzalo GC (339 intervenciones) el 08/08/2011 03:41:46
El SQL sólo te puede devolver datos que existan. Lo que no existe, bueno, eso: NO EXISTE, y por lo tanto no te lo puede devolver.
Ese tipo de cosas se resuelve parte en la base y parte en la programación. La base te puede devolver lo que efectivamente puede calcular, y el resto lo debes generar en el programa.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Select a Periodo que no existe

Publicado por Matias (48 intervenciones) el 08/08/2011 03:49:52
Claro, tenes razón.
Muchas Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Select a Periodo que no existe

Publicado por martin (150 intervenciones) el 09/08/2011 00:46:08
Nada que un SP no pueda resolver.

SAludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Select a Periodo que no existe

Publicado por Gonzalo GC (339 intervenciones) el 09/08/2011 15:34:16
SI... pero haciendo en un SP lo mismo que harías en el programa...
No tiene mucho sentido y además en ciertos contexto chocarías con las limitaciones de memoria que MySQL asigna a los SP.
Es muchísimo más rápido y más simple hacerlo por programación.

P.D.: Ya lo hice dos veces en SP. Y la experiencia me enseñó que hay cosas que hay que dejarle a los lenguajes de programación.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Select a Periodo que no existe

Publicado por martin (150 intervenciones) el 10/08/2011 00:49:33
En este caso me parece mejor un sp, no creo que la solucion sea complicada y tengamos tampoco problemas de memoria, siempre es mejor que algunas cosas las trabaje el servidor, de todos modos hay que ver que solucion le encuentra el programador, es mucho mas potente un leguaje de programacion tradicional que un sp, para mi le daria mas transparencia al programador simplemente ejecutando un sp y que este le devuelva el recordset.

SAludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar