[英]Oracle SQL - group by date_format function
有人可以幫我解決我的錯誤嗎? 我正在嘗試計算ID_ACCIDENT
列中的不同值,並且我希望它們按月份分組(日期以YYYY/MM/DD
格式存儲在DATUM
列中)。
我有這段代碼的那一刻:
SELECT DATE_FORMAT(DATUM, '%Y/%M') as "Month",COUNT (DISTINCT ID_ACCIDENT) AS "Počet nehod"
FROM RAW_DATA
GROUP BY DATE_FORMAT(DATUM, '%Y/%M');
但它不起作用 - error 00904. 00000 - invalid identifier
。
使用to_date
怎么樣,因為這是 Oracle -
select to_char(to_date(datum, 'yyyy/mm/dd'), 'yyyy/mm')) as month,
COUNT (DISTINCT ID_ACCIDENT) as count
from raw_data
group by to_char(to_date(datum, 'yyyy/mm/dd'), 'yyyy/mm'))
如果DATUM
是日期,那么
SELECT
TRUNC(DATUM, 'MONTH') as "Month",
COUNT (DISTINCT ID_ACCIDENT) AS "Počet nehod"
FROM RAW_DATA
GROUP BY TRUNC(DATUM, 'MONTH');
如果DATUM
是 YYYY/MM/DD 格式的字符串,則
SELECT
SUBSTR(datum,1,7),
COUNT(DISTINCT id)
FROM raw_data
GROUP BY substr(datum,1,7)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.