mysql의 현재 날짜에서 30일을 빼려면 어떻게 해야 하나요?
mysql의 현재 날짜에서 30일을 빼려면 어떻게 해야 하나요?
SELECT * FROM table
WHERE exec_datetime BETWEEN DATEDIFF(NOW() - 30 days) AND NOW();
SELECT * FROM table
WHERE exec_datetime BETWEEN DATE_SUB(NOW(), INTERVAL 30 DAY) AND NOW();
http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_date-add
사용하고 싶지 않은 분에게DATE_SUB
,사용하다CURRENT_DATE
:
SELECT CURRENT_DATE - INTERVAL 30 DAY
MySQL에서 지금부터 일수를 차감:
select now(), now() - interval 1 day
인쇄:
2014-10-08 09:00:56 2014-10-07 09:00:56
기타 Interval Temporal Expression Unit 인수:
https://dev.mysql.com/doc/refman/5.5/en/expressions.html#temporal-intervals
select now() - interval 1 microsecond
select now() - interval 1 second
select now() - interval 1 minute
select now() - interval 1 hour
select now() - interval 1 day
select now() - interval 1 week
select now() - interval 1 month
select now() - interval 1 year
사용하지 맙시다NOW()
쿼리가 매번 다르기 때문에 쿼리 캐시 또는 최적화가 손실됩니다.MySQL 설명서에서 사용하면 안 되는 기능 목록을 참조하십시오.
아래 코드에서는 이 테이블이 시간이 지남에 따라 증가하고 있다고 가정합니다.새로운 내용이 추가되어 지난 30일 동안의 내용만 표시하려고 합니다.이것은 가장 일반적인 경우입니다.
날짜는 문자열로 추가되어 있습니다.이 방법으로 발신자 코드에서 날짜를 추가하는 것이,NOW()
캐싱이 중단될 때 기능합니다.
SELECT * FROM table WHERE exec_datetime >= DATE_SUB('2012-06-12', INTERVAL 30 DAY);
사용할 수 있습니다.BETWEEN
지금 이 순간부터 30일 전까지의 데이터를 정말로 원하는 경우입니다. 하지만 제 경험상 일반적인 사용 사례는 아니므로 단순화된 쿼리가 도움이 되었으면 합니다.
를 사용할 수도 있습니다.
select CURDATE()-INTERVAL 30 DAY
SELECT date_format(current_date - INTERVAL 50 DAY,'%d-%b-%Y')
SQL에서 날짜 형식을 사용하여 형식을 지정할 수 있습니다.
시간 사용이 아닌 날짜만 필요한 경우:
select*from table where exec_datetime
between subdate(curdate(), 30)and curdate();
부터curdate()
시간 구성 요소를 생략하면 잠재적으로 시간 구성 요소보다 빠를 수 있습니다.now()
날짜에만 관심이 있는 경우에는 더 "논리적으로 정확"합니다.
또한.subdate()
님의 2-Aity 과부하가 사용 시보다 더 빠를 수 있습니다.interval
.는 요일 이외의 컴포넌트가 필요한 경우를 대상으로 하고 있습니다.
다른 방법
SELECT COUNT(*) FROM tbl_debug WHERE TO_DAYS(`when`) < TO_DAYS(NOW())-30 ;
언급URL : https://stackoverflow.com/questions/10763031/how-to-subtract-30-days-from-the-current-datetime-in-mysql
'programing' 카테고리의 다른 글
자바 제네릭스의 &과 '의 차이점은 무엇입니까? (0) | 2022.12.27 |
---|---|
C에 정원이 있나요? (0) | 2022.12.27 |
마리아에 잠긴 채로 건너뛸 수도 있습니다.DB (0) | 2022.11.27 |
Mysql에서 id를 사용하여 테이블에서 많은 행 삭제 (0) | 2022.11.27 |
Mysql group_concat의 반복 키 및 1개의 쿼리에서 여러 열의 반복 횟수(Query Optimization) (0) | 2022.11.27 |