본문 바로가기
MySql

MySQL How to group by week in MySQL?

by 베이스 공부 2020. 12. 30.
반응형

오라클의 테이블 서버는 내장 함수 인 TRUNC (timestamp, 'DY') 를 제공합니다. 이 함수는 모든 타임 스탬프를 이전 일요일의 자정으로 변환합니다. MySQL에서이를 수행하는 가장 좋은 방법은 무엇입니까?

Oracle은 또한 타임 스탬프가 발생하는 달의 1 일 자정으로 변환하는 TRUNC (timestamp, 'MM') 를 제공합니다. MySQL에서 이것은 간단합니다.

TIMESTAMP(DATE_FORMAT(timestamp, '%Y-%m-01'))

하지만이 DATE_FORMAT 트릭은 몇 주 동안 작동하지 않습니다. 나는 WEEK (timestamp) 함수를 알고 있지만 실제로는 연중 주 번호를 원하지 않습니다. 이 물건은 다년간의 작업입니다.

 

해결 방법

 

알아 냈어 ... 조금 번거롭지 만 여기 있습니다.

FROM_DAYS(TO_DAYS(TIMESTAMP) -MOD(TO_DAYS(TIMESTAMP) -1, 7))

그리고 비즈니스 규칙에 따라 주가 월요일에 시작한다고되어 있으면 -1 -2 로 변경합니다.

수정

몇 년이 지났고 마침내 나는 이것을 작성했습니다.


 

참조 페이지 https://stackoverflow.com/questions/1736010

 

 

반응형

댓글