我有这样的例子数据:SQL分组依据 - 每月/每年,错误计数的唱片插入 - 不是一个有效的月份
Country | Members | Joined
USA | 250 | 1/1/2012
USA | 100 | 1/8/2012
Russia | 75 | 1/20/2012
USA | 150 | 2/10/2012
当我查询这个数据,我想聚集在所有记录给定月份。查询的结果会是什么样子:
Country | Members | Joined
USA | 350 | 1/2012
Russia | 75 | 1/2012
USA | 150 | 2/2012
作为选择很简单:
select country, count(*) as members , to_char(trunc(joined), 'MM-YYYY')
from table
group by country, to_char(trunc(joined), 'MM-YYYY')
该查询都会给我数据,我想要的格式,但我的问题是,当我去插入到一个新的数据透视表我得到一个错误,因为select语句中的to_char()被放入DATETIME列(错误:ORA-01843 - 不是有效月份)
当我更改to_char ()在select到to_date()中,它仍然不起作用(同样的错误,ORA-01843 - 不是有效的月份):
select country, count(*) as members, to_date(trunc(joined), 'MM-YYYY')
from table
group by country, to_date(trunc(joined), 'MM-YYYY')
如何在这样我可以插入结果到一个新的表,其方式修改此查询的任何建议“参加”列的类型是DATETIME的?
在此先感谢您的任何提示/建议/意见!
在我脑海中,这正是我想弄明白的。非常感谢! – 2012-07-11 19:19:33