mysql에서는 select 문을 사용하여 지난 주의 데이터를 쿼리할 수 있습니다. 구문은 "select * from table where DATE_SUB(CURDATE(), INTERVAL 7 DAY)
이 튜토리얼의 운영 환경: windows10 시스템, mysql8.0.22 버전, Dell G3 컴퓨터.
구문은 다음과 같습니다.
select * from table where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(column_time);
지식 확장:
하루 동안의 쿼리:
select * from table where to_days(column_time) = to_days(now()); select * from table where date(column_time) = curdate();
한 달 동안의 쿼리:
select * from table where DATE_SUB(CURDATE(), INTERVAL INTERVAL 1 MONTH) <= date(column_time);
예시는 다음과 같습니다.
효과는 다음과 같습니다. ( 여기서 SQL 문의 주 범위는 월요일부터 일요일까지를 의미하며, 월요일은 한 주의 첫 번째 날입니다. 쿼리가 8월 11일에 수행되었기 때문에 월요일부터 토요일까지의 결과가 표시됩니다):
달력:
간단히 말하면 오늘 날짜를 사용하여 이전 7일의 날짜를 생성하고(union all 명령 사용) 이번 주를 선택합니다. 월요일 날짜 조건에 따른 날짜
SELECT DATE(subdate(curdate(),date_format(curdate(),'%w')-1)) as thisweek union all SELECT DATE(DATE_ADD(subdate(curdate(),date_format(curdate(),'%w')-1), interval 1 day)) as thisweek union all SELECT DATE(DATE_ADD(subdate(curdate(),date_format(curdate(),'%w')-1), interval 2 day)) as thisweek union all SELECT DATE(DATE_ADD(subdate(curdate(),date_format(curdate(),'%w')-1), interval 3 day)) as thisweek union all SELECT DATE(DATE_ADD(subdate(curdate(),date_format(curdate(),'%w')-1), interval 4 day)) as thisweek union all SELECT DATE(DATE_ADD(subdate(curdate(),date_format(curdate(),'%w')-1), interval 5 day)) as thisweek union all SELECT DATE(DATE_ADD(subdate(curdate(),date_format(curdate(),'%w')-1), interval 6 day)) as thisweek
분석:
SELECT DATE(subdate(curdate(),date_format(curdate(),’%w’)-1))
얻는 것은 이번 주의 첫 번째 날입니다(월요일부터 일요일은 일주일입니다). 즉, 8월 6일
추천 학습: mysql 비디오 튜토리얼
위 내용은 MySQL에서 지난주 데이터를 쿼리하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!