날짜 연산쿼리 > 기술자료 | 해피정닷컴

날짜 연산쿼리 > 기술자료

본문 바로가기

사이트 내 전체검색

날짜 연산쿼리 > 기술자료

MySQL 날짜 연산쿼리

페이지 정보


본문

이전에 서비스 기간 연장 신청 프로그램을 만들때
mktime과 unixtime을 이용해서 연산식을 만들어 사용을 했었습니다.
윤년에 대한 처리도 해야 하고, 30일, 31일에 따라 검증도 해야 했습니다.
별거 아닌건데.. 무지 귀찮게 하구요... 생각보다 연산오류가 생기는 경우가 많죠...

찾다 보니 아주 좋은 mysql쿼리가 있더군요. 날짜연산을 DB에서 연산을 해서 보여줍니다.
예외처리는 윤년처리 30일 31일처리도 mysql에서 알아서 해줍니다 ^^
SELECT ('2007-11-16' - INTERVAL 1 MONTH) AS a;
SELECT ('2007-11-16' + INTERVAL 1 DAY) as b;
SELECT ('2007-11-16' + INTERVAL 1 YEAR) as c;
위를 보시면 1달 만큼 더하고 싶으면 1 MONTH, 1년은 1 YEAR, 하루는 1 DAY입니다.
빼기도 마찬가지로 '+'를 '-'로 변경만 하시면 됩니다.

그리고 UNIXTIME의 경우는
SELECT UNIX_TIMESTAMP(('2007-11-16' - INTERVAL 1 MONTH)) AS a;
SELECT UNIX_TIMESTAMP(('2007-11-16' + INTERVAL 1 DAY)) as b;
SELECT UNIX_TIMESTAMP(('2007-11-16' + INTERVAL 1 YEAR)) as c;
위의 쿼리를 찍어보시면 각각 일자 시작 값(2007.11.19 00:00:00)을 unixtime으로 반환합니다.
일자 끝을 표시하시려면
SELECT UNIX_TIMESTAMP(('2007-11-16' - INTERVAL 1 MONTH)) + 86399 AS a;
SELECT UNIX_TIMESTAMP(('2007-11-16' + INTERVAL 1 DAY)) + 86399 as b;
SELECT UNIX_TIMESTAMP(('2007-11-16' + INTERVAL 1 YEAR)) + 86399 as c;
이렇게 하시면 됩니다 ^^


관련자료
http://www2.phpschool.com/gnuboard4/bbs/board.php?bo_table=tipntech&wr_id=57366

댓글목록

등록된 댓글이 없습니다.


Total 111건 4 페이지
  • RSS
기술자료 목록
51
MySQL   13490  2015-05-20 00:39  
50
MySQL   12836  2013-09-12 14:02 ~ 2017-10-30 02:22  
49
MySQL   24353  2013-05-11 18:26 ~ 2023-01-11 13:42  
48
MySQL   12720  2013-03-23 17:40  
47
MySQL   19077  2013-02-18 20:53  
46
MySQL   13580  2012-11-05 01:21  
45
MySQL   17482  2012-11-03 06:07  
44
MySQL   12823  2012-06-13 02:18  
43
MySQL   12760  2012-05-22 14:48  
42
MySQL   30639  2012-05-22 14:20  
41
MySQL   13632  2012-04-01 12:30  
40
MySQL   17940  2012-02-29 22:30  
39
MySQL   17012  2011-12-01 23:15 ~ 2018-01-16 11:18  
38
MySQL   13857  2011-10-01 19:05  
열람
MySQL   14932  2010-07-21 21:48  
36
MySQL   17701  2010-05-14 09:20  
35
MySQL   16152  2009-12-09 22:47  
34
MySQL   13163  2009-12-09 22:32  
33
MySQL   18776  2009-09-08 20:22  
32
MySQL   43488  2009-09-08 20:21  

검색

해피정닷컴 정보

회사소개 회사연혁 협력사 오시는길 서비스 이용약관 개인정보 처리방침

회사명: 해피정닷컴   대표: 정창용   전화: 070-7600-3500   팩스: 042-670-8272
주소: (34368) 대전시 대덕구 대화로 160 대전산업용재유통단지 1동 222호
개인정보보호책임자: 정창용   사업자번호: 119-05-36414
통신판매업신고: 제2024-대전대덕-0405호 [사업자등록확인]  
Copyright 2001~2024 해피정닷컴. All Rights Reserved.