Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Agrupar por mes en Doctrine DQL

Estas en el tema de Agrupar por mes en Doctrine DQL en el foro de PHP en Foros del Web. Hola, tengo un problema que quizás me puedan ayudar. Necesito hacer un GROUP BY por el mes de una fecha en una consulta DQL. He ...
  #1 (permalink)  
Antiguo 09/09/2015, 17:14
Avatar de ytapanes  
Fecha de Ingreso: junio-2012
Mensajes: 22
Antigüedad: 11 años, 10 meses
Puntos: 0
Agrupar por mes en Doctrine DQL

Hola, tengo un problema que quizás me puedan ayudar. Necesito hacer un GROUP BY por el mes de una fecha en una consulta DQL. He visto que con Doctrine Extension se puede hacer pero para MySQL y lo necesito para Postgres. La idea es contar la cantidad de veces que se repite una determinado parámetro en un mes. Actualmente lo soluciono haciendo 1 consulta por cada mes, pero esto no es óptimo, necesito hacer una sola consulta que los devuelva ya agrupados.
Gracias de antemano y saludos
  #2 (permalink)  
Antiguo 10/09/2015, 07:36
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 9 meses
Puntos: 379
Respuesta: Agrupar por mes en Doctrine DQL

https://github.com/orocrm/doctrine-extensions para Mysql y PostgreSQL, por cierto la función group by ya vien por defecto en el lenguaje; revisa la documentación
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.

Última edición por hhs; 10/09/2015 a las 07:52
  #3 (permalink)  
Antiguo 16/09/2015, 19:17
Avatar de ytapanes  
Fecha de Ingreso: junio-2012
Mensajes: 22
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: Agrupar por mes en Doctrine DQL

Si, se que group by existe aquí, pero lo que no encontraba era la función MONTH, pero gracias, con el bundle que me dices lo solucioné

Etiquetas: doctrine2, postgres, symfony2
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:18.