close

이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

linux/mysql

주간통계시 연도가 변경될 경우 YEARWEEK함수

mysop 2022. 1. 7. 09:14
728x90
반응형

지난번 올린 포스팅중

 

일간/주간/월간 통계 mysql관련 쿼리문을 올린적이 있다

https://blog.and.kr/91

 

위 쿼리들은 편리하고 좋은데

다만 주간통계에 사용하는 쿼리는

2022년 해가 바뀌고 나서 문제점을 알아냈다

 

 

2021년 12월 27일 ~ 2022년 1월 2일까지 주간 통계를 내려고 한다.

 

기존 쿼리를 사용하게 되면

2021년과 2022년을 분리해서 쿼리를 만들게 된다

DATE_FORMAT(`reg_date`, '%Y%U')

 

그래서 2022년 1월 1일 ~ 2일은 2022년 0번째 주라는 방식으로 

group by를 따로 생성해 통계를 뽑아 버린다

 

내가 원하는건 해가 바뀌어도 한주간을 통째로 잡아서 뽑는거다.

 

찾아보니 YEARWEEK함수를 사용하면 해결되었다.

 

select * FROM table where 조건문 GROUP BY YEARWEEK(컬럼명,1)

 

해당함수 뒤에 붙는 1은 월요일부터 일요일까지로 기간설정이다.

 

https://www.w3schools.com/sql/func_mysql_yearweek.asp

 

MySQL YEARWEEK() Function

W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more.

www.w3schools.com

 

728x90
반응형

'linux > mysql' 카테고리의 다른 글

일별통계, 주간통계, 월간통계  (0) 2021.12.02
DATE_FORMAT 날짜 표기  (0) 2021.12.02
mysql 일부구간만 컬럼 합산(sum)  (0) 2021.06.23
mysql 컬럼 추가  (0) 2021.02.02