2011-09-17 8 views
8

Come scrivere una query SQL seguente in doctrine2 come DQL.utilizzando il mese, l'anno in doctrine2

SELECT COUNT(id) 
FROM stats 
WHERE YEAR(record_date) = 2009 
GROUP BY YEAR(record_date), MONTH(record_date) 

cioè mi piacerebbe group by risultati in base a mese, anno di campo datetime memorizzato nella tabella di MySQL.

risposta

9

In DQL si potrebbe anche gruppo da mesi, anni, giorni ecc con SUBSTRING.

Per esempio - group by month (datetime format Y-m-d H:i:s):

SELECT p, SUBSTRING(p.date, 6, 2) as month 
FROM Entity p 
GROUP BY month