![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
|
Error al agrupar totales por mes
Saludos al foro.
Tengo una duda que no he conseguido resolver buscando por el foro. Tengo una BD en Access a la que accedo desde D7 con componentes ADO. La BD tiene, entre otras, las tablas Facturas (con los campos: Numfactura, Fecha, Idcliente, Situacion, Total, etc...) y Clientes (idcliente, nombre, etc...) Quiero hacer una consulta que me muestre el total facturado agrupado por mes, algo así: Mes Total ------------ 01 256.36 02 2569.45 etc Para ello utilizo un Adoquery con la siguiente sql: select MONTH(Facturas.Fecha) as mes,Facturas.idcliente, Clientes.idcliente, Clientes.Nombre, Facturas.Total, Facturas.Tipo, Facturas.Situacion, Sum(Facturas.Total) as Sumatotal from Facturas,Clientes where Clientes.idcliente=Facturas.idcliente group by mes Pero no funciona. Me da el siguiente error: 'Ha intentado ejecutar una consulta que no incluye la expresión especificada 'MONTH(Facturas.Fecha)' como parte de una función de agregado' En cambio, con esta SQL me funciona: select MONTH(Facturas.Fecha) as mes,Facturas.idcliente, Clientes.idcliente, Clientes.Nombre, Facturas.Total, Facturas.Tipo, Facturas.Situacion from Facturas,Clientes where Clientes.idcliente=Facturas.idcliente Nótese que he quitado el sum(facturas.total) as sumatotal y el group by mes. Si sólo quito el group by mes y dejo el sum(facturas.total) as sumatotal también me da el mismo error. Evidentemente, con el sql que funciona no consigo lo que quiero. ¿Dónde está el fallo? Gracias de antemano. |
|
#2
|
||||
|
||||
|
Según el error, no puedes usar
group by mes sino group by Month(Facturas.Fecha) Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
|
#3
|
|||
|
|||
|
Resuelto
Gracias Lepe por tu pronta respuesta. Con lo que has dicho y trasteando un poco he solucionado el problema.
El sql que funciona es este: select MONTH(Facturas.Fecha) as mes, Sum(Facturas.Total) as Sumatotal from Facturas where Facturas.Tipo = 'Factura' group by MONTH(Facturas.Fecha) No se pueden poner mas campos en el select (Facturas.Tipo, Facturas.Situacion etc.) porque si no, se repite el error que comentaba en mi primer comentario. Te lo agradezco, Lepe. Un saludo. |
![]() |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| incluir totales o no | reevil | MySQL | 12 | 06-05-2006 07:42:05 |
| Totales en informe | Asshole | Impresión | 1 | 16-06-2005 15:33:05 |
| Totales con FreeReports | brandolin | Impresión | 0 | 28-08-2004 07:13:37 |
| Problemas con Totales | pruz | Impresión | 3 | 26-07-2004 21:08:48 |
| Campo totales | R.Rodriguez | Tablas planas | 1 | 21-05-2004 08:28:45 |
|