[MySQL날짜 차이 구하기

※ 경고
높이뜬새의 모르는 사람이 없는 팁시리즈 입니다.
이 팁시리즈는 지면낭비라는 항의시에 즉각 중단됩니다.

MySQL에서 날짜간의 차이를 구하기 위해서는 TO_DAYS 함수를 사용하시면 됩니다. TO_DAY 함수는 TO_SECONDS 함수처럼 지원하는 버전대가 있는 것도 아니라서 MySQL 버전이 몇이든 상관없이 사용하실 수 있습니다.



형식) MySQL프롬프트> SELECT TO_DAYS(DATE) - TO_DAYS(DATE);


예) 2010년 2월15일과 2010년1월25일의 차이 구하기

mysql> SELECT TO_DAYS('2010-02-15') - TO_DAYS('2010-01-15' ) AS CHA;

예) 2010년의 설날연휴인 2010년 2월13일은 오늘부터 몇 일 남았나 구하기

mysql> SELECT TO_DAYS('2010-02-13') - TO_DAYS(now()) AS CHA;


※ TO_DAYS 함수는 기본 인자로 DATE 형을 취하기 때문에 아래와 같이 CAST함수를 이용해서 DATE형으로 형변환 해서 쓰실 수도 있습니다.


mysql> SELECT TO_DAYS(CAST('2010-03-01' AS DATE)) - TO_DAYS(CAST('2010-01-25' AS DATE)) AS CHA;






테이블 이름에서 근무일이 300일 미만을 출력해라

select * from테이블이름 where to_days(now())-to_days(근무시작일) < 300

Posted by 앗뜨거워 ( @bok3937 ) 앗뜨거