我有一个名为sDateTime的Date数据类型列,我希望按日期分组选择数据,实际上我想显示特定月份每天的销售总额。
sDateTime是Date数据类型,但它也存储时间,因此我需要将其转换为仅日期格式。我正在使用以下查询引发异常 ORA-00979 任何人都可以帮助我。
SELECT sdatetime AS Sale_Date,
SUM(amount) AS Sale
FROM sales
GROUP BY To_char(sdatetime, 'yyyy-MM-dd')
HAVING sdatetime BETWEEN To_date('2015-01-01', 'yyyy-MM-dd') AND
To_date('2015-01-09', 'yyyy-MM-dd')
答案 0 :(得分:2)
重写这样的查询
select to_char(sDateTime,'yyyy-MM-dd') AS Sale_Date, SUM(Amount) AS Sale
FROM SALES where sDateTime between to_date('2015-01-01','yyyy-MM-dd')
and to_date('2015-01-09','yyyy-MM-dd')
GROUP BY to_char(sDateTime,'yyyy-MM-dd')