Subject Re: [firebird-support] group by date
Author Svein Erling Tysvær
>Any ideas?
>
>Hello @ll,
>
>I would like to group my records by day or month. The date is saved as timestamp. If I do the following,
>
>SELECT EXTRACT(day FROM m.messzeit), COUNT(*) as CountMessages
>FROM te_messzeiten m
>
>GROUP BY EXTRACT(day FROM m.messzeit)
>
>I get all days (1 to 31), but I need group by 1.1.2014, 2.1.2014.. – daily bzw. 1 2014, 2 2014 – monthly
>
>How can I realize this?

A few minutes after you asked this question, Mark gave you a very good answer:

group by day:

GROUP BY CAST(m.messzeit AS DATE)

or less efficient:

GROUP BY EXTRACT(YEAR from m.messzeit), (EXTRACT(month FROM m.messzeit),
EXTRACT(day from m.messzeit)

or if you want to group by month in year:

GROUP BY EXTRACT(YEAR from m.messzeit), (EXTRACT(month FROM m.messzeit)

Mark