주 번호를 기준으로 MySQL에서 한 주의 첫 번째 요일 가져오기
주 번호를 사용하여 특정 주의 첫 번째 요일을 결정하는 것은 다음과 같습니다. 데이터베이스 프로그래밍의 일반적인 작업입니다. MySQL의 강력한 날짜 기능을 사용하면 이 작업을 효율적으로 수행할 수 있습니다.
과제:
주 번호가 주어지면 MySQL에서 해당 주의 첫날을 어떻게 검색합니까? ? 예를 들어, 현재 WEEK 29라는 것을 알고 제공된 주 번호 매개변수에서 7월 18일 일요일을 추출하려고 합니다.
해결책:
MySQL은 다음을 제공합니다. 이 문제를 해결하기 위한 간단한 접근 방식입니다. DAYOFWEEK() 함수를 활용하면 1(일요일)부터 7(토요일)까지의 현재 요일을 확인할 수 있습니다. 1에서 DAYOFWEEK() 값을 빼면 이전 일요일 이후의 일수를 계산합니다.
ADDDATE() 함수를 사용하면 계산된 일수를 현재 날짜에서 빼서 다음 일요일에 도달할 수 있습니다. 주의 첫날:
ADDDATE(CURDATE(), INTERVAL 1-DAYOFWEEK(CURDATE()) DAY) WeekStart
이 쿼리를 사용하면 현재 날짜를 기준으로 주의 첫째 날을 얻을 수 있습니다. 이 논리를 특정 주 번호로 더 확장하려면 쿼리에서 주 번호를 매개 변수화할 수 있습니다.
ADDDATE(CURDATE(), INTERVAL 1-DAYOFWEEK(CURDATE())+(7 * (WEEKNO - WEEK(CURDATE()))) DAY) WeekStart
이 쿼리는 지정된 WEEKNO 매개 변수에 대한 주의 첫 번째 요일을 반환합니다. 이 예에서 WEEKNO를 29로 바꾸면 7월 18일 일요일.
이라는 원하는 결과가 나옵니다.위 내용은 MySQL에서 특정 주의 첫날을 찾는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!