Access - mes

 
Vista:

mes

Publicado por jorgu (1 intervención) el 29/10/2004 00:50:12
A ver si me pueden ayudar. Tengo una consulta donde me saca los resultados por mes, o sea octubre-2004 500$, pero lo que yo quisiera es que me saque todo el año aunque tenga valore cero desde enero
Ejemplo
enero-2004 0$
febrero-2004 0$.....
octubre-2004 500$
noviembre -2004 0$
diciembre-2004 0$
porque recien comence a facturar en octubre, pero quiero que salga todo el año. Desde ya el que me pueda ayudar se lo agradezco
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
Imágen de perfil de Alejandro

Obtener resultados para todo el año, incluso meses con valores cero

Publicado por Alejandro (4142 intervenciones) el 15/05/2023 22:32:49
Para obtener resultados para todo el año, incluyendo los meses con valores cero, puedes utilizar una tabla o consulta auxiliar que contenga todos los meses del año. A continuación, te presento dos enfoques para lograrlo:

1. Tabla auxiliar: Crea una tabla llamada "Meses" con un campo "Mes" de tipo texto que contenga los nombres de los meses (enero, febrero, etc.). Asegúrate de tener 12 registros en esta tabla, uno para cada mes del año.

Luego, puedes hacer una consulta que una la tabla "Meses" con tus datos y devuelva los resultados para todos los meses, incluso aquellos con valores cero. La consulta sería similar a esta:

1
2
3
SELECT Meses.Mes, Nz(TuTabla.Importe, 0) AS Importe
FROM Meses LEFT JOIN TuTabla ON Meses.Mes = Format(TuTabla.Fecha, "mmmm") AND Year(TuTabla.Fecha) = 2004
ORDER BY Month(DateSerial(Year(TuTabla.Fecha), Month(TuTabla.Fecha), 1));

Reemplaza "TuTabla" con el nombre de tu tabla y ajusta la expresión de fecha adecuadamente. Esta consulta utiliza una combinación de la tabla "Meses" y tu tabla principal utilizando un LEFT JOIN para obtener todos los meses del año, incluso si no hay valores correspondientes en tu tabla principal. La función Nz se utiliza para reemplazar los valores nulos por cero.

2. Consulta de valores fijos: Si no deseas crear una tabla auxiliar, puedes utilizar una consulta con valores fijos para los meses del año. La consulta sería similar a esta:

1
2
3
4
5
6
7
8
9
10
11
12
13
SELECT "enero-2004" AS Mes, Nz(TuTabla.Importe, 0) AS Importe
FROM TuTabla
WHERE Month(TuTabla.Fecha) = 1 AND Year(TuTabla.Fecha) = 2004
 
UNION ALL
 
SELECT "febrero-2004" AS Mes, Nz(TuTabla.Importe, 0) AS Importe
FROM TuTabla
WHERE Month(TuTabla.Fecha) = 2 AND Year(TuTabla.Fecha) = 2004
 
... (repite el patrón para cada mes)
 
ORDER BY Month(DateSerial(Year(TuTabla.Fecha), Month(TuTabla.Fecha), 1));

Reemplaza "TuTabla" con el nombre de tu tabla y ajusta las condiciones de fecha adecuadamente. Esta consulta utiliza una serie de consultas SELECT para cada mes, donde se especifican los nombres de los meses y se seleccionan los valores correspondientes de tu tabla principal. La función Nz se utiliza para reemplazar los valores nulos por cero. Los resultados de las consultas SELECT se combinan utilizando UNION ALL.

Espero que estas soluciones te sean útiles para obtener los resultados deseados para todo el año, incluso con valores cero en los meses sin datos.
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