SQL группа по дате - PullRequest
       22

SQL группа по дате

3 голосов
/ 06 апреля 2009

Я пытаюсь сделать отчет, но у меня проблемы с моим архимезисом SQL.

У меня есть таблица, в которой хранится дата закрытия транзакции.

Я хочу знать, сколько транзакций было в месяц, поэтому я сделал:

SELECT trunct( closedate, 'MONTH' ) FROM  MY_TRANSACTIONS 

Я использую оракула. ​​

Я получаю такой список:

2002-09-01 00:00:00.0
2002-09-01 00:00:00.0
...
2002-10-01 00:00:00.0
2002-10-01 00:00:00.0
...
2002-11-01 00:00:00.0
2002-11-01 00:00:00.0

и т.д..

Поэтому я подумал: «Если я добавлю COUNT () в select и GROUP BY в конце оператора, который должен делать», но это не так. Я думаю, потому что каждая запись рассматривается как отдельное значение: -S

Любой намек, пожалуйста?

Спасибо.

1 Ответ

11 голосов
/ 06 апреля 2009

Вы хотите сгруппировать по всем неагговым полям. И вы не хотите урезать дату, вам нужна месячная часть даты.

так что-то вроде

выберите to_char (поле даты, «Месяц»), количество (*) из ... сгруппировать по to_char (поле даты, «месяц»);

...