我正在尝试撰写报告但我的archi nemesis SQL存在问题。
我有一个表格,其中存储了交易的结束日期。
我想知道每月有多少交易,所以我做了:
SELECT trunct( closedate, 'MONTH' ) FROM MY_TRANSACTIONS
我正在使用oracle。
我得到一个这样的列表:
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
等。
所以我想“如果我在语句末尾的select和GROUP BY中添加一个COUNT()”,但它没有。我的猜测是因为每条记录都被视为不同的值:-S
请提示吗?
感谢。
答案 0 :(得分:11)
您希望按所有非聚合字段进行分组。而且你不想截断日期,你想要日期的月份部分。
类似
选择to_char(datefield,'Month'),从...组中计算(*)to_char(datefield,'Month');