SELECT TRUNC(ADD_MONTHS(TO_DATE(:V_DATE),-12), 'Y')+(LEVEL-1) L_DATE
FROM DUAL CONNECT BY LEVEL
<= LAST_DAY(TO_DATE(:V_DATE))-
TRUNC(ADD_MONTHS(TO_DATE(:V_DATE), -12), 'Y')+1
날짜 입력받아서 해당 날짜의 전년도 1월1일부터 입력받은 날짜의 월의 마지막(-31일 or -30일 or -29일...)날짜까지 출력하는 쿼리...
날짜를 뒤에 적힌 형식의 아래로 초기화?하는 함수
EX) TRUNC(2023-07-27, 'MONTH') -> 출력 : 2023-07-01
날짜에서 월수만큼 더하거나 뺌
EX) ADD_MONTHS(2023-07-27, -12) -> 출력 : 2022-07-27
'2023-01-01' 이런식으로 숫자를 날짜형식으로 바꿔줌
CONNECT BY LEVEL 은 아직 헷갈려서 조금 더 ... 공부해봐야겠다
-> https://meyouus.tistory.com/175