[英]Oracle get unique year and month in query
我有以下查詢,該查詢返回我正在尋找的結果,但事實上我無法按組工作:
select EXTRACT(month from datetime_insert) m,
EXTRACT(year from datetime_insert) y
from tst_result_main
order by datetime_insert
返回以下內容:
m y
1 2006
1 2006
2 2006
2 2006
2 2007
2 2007
我正在尋找的結果:
m y
1 2006
2 2006
2 2007
我嘗試了以下引發錯誤的操作:
select EXTRACT(month from datetime_insert) m,
EXTRACT(year from datetime_insert) y
from tst_result_main
order by datetime_insert group by y, m
錯誤:
ORA-00933: SQL command not properly ended
00933. 00000 - "SQL command not properly ended"
*Cause:
*Action: Error at Line: 7 Column: 136
任何幫助,將不勝感激
您是否嘗試過類似DISTINCT的值:
select DISTINCT
EXTRACT(month from datetime_insert) m
, EXTRACT(year from datetime_insert) y
from tst_result_main
沒有聚合功能,您應該使用distinctary子句而不是分組
select DISTINCT
EXTRACT(month from datetime_insert) m
, EXTRACT(year from datetime_insert) y
from tst_result_main
order by y, m
嘗試這個 :
select EXTRACT(month from datetime_insert) m, EXTRACT(year from datetime_insert) y
from tst_result_main
group by EXTRACT(year from datetime_insert), EXTRACT(month from datetime_insert)
order by y,m;
別名不能用於表達式group by
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.