오라클에 월 및 연도별로 날짜를 그룹화하는 쿼리를 작성하려고합니다. 게다가 달은 월 번호가 아닌 이름이 표시되어야합니다. 내가 현재 가지고오라클 그룹 월별, 연도 별, 연도 별, 주문 별
쿼리는 다음과 같습니다
SELECT to_char(datumgeleend, 'MONTH') as "Maand geleend",
to_char(datumgeleend, 'YYYY') as "Jaar geleend", SUM(bedrag)
FROM lening
GROUP BY to_char(datumgeleend, 'MONTH'), to_char(datumgeleend, 'YYYY')
ORDER BY to_char(datumgeleend, 'YYYY'), to_char(datumgeleend, 'MONTH') DESC;
문제가 있음을 해당 월의 첫 번째 문자가 아니라 달의 수에 작품으로 순서. 인수 분해 WITH 절을 사용하여,
ORA-00979: not a GROUP BY expression
아, 그 일을 완벽하게 수행합니다! 나는 GROUP BY에 넣어야 만한다는 것을 깨닫지 못했습니다. 결국 나는 그것을 올바르게 정렬하기 위해 DESC를 없애야 만했다. 그러나 그것은 질문과는 아무 상관이 없다. 대답 해 주셔서 감사합니다! –