날짜 연산쿼리 > 온라인강의

본문 바로가기
 
 
 
오늘 686
어제 1,481
최대 2,454
전체 3,205,408
비즈니스의 시작 비즈명함 ~ 가격, 품질, 배송 3가지 만족을 드리는 비즈명함 / 즉석명함 / 급행서비스 / 서울 전지역 수도권일부 3시간배송

온라인강좌 홈 > 온라인강좌 > 온라인강좌

MySQL | 날짜 연산쿼리

페이지 정보

작성일2010-07-21 21:48 조회6,963회 댓글0건

본문

이전에 서비스 기간 연장 신청 프로그램을 만들때
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 50건 1 페이지
온라인강의 목록
번호 제목
50
MySQL Window에서 MySQL 5.7.13 설치하기 (write.2016-06-25)인기글  Hit.3008
49
48
MySQL 쿼리 및 인덱스의 이해 (write.2015-05-20)인기글  Hit.2676
47
MySQL 여러가지 툴 (write.2013-09-12)인기글  Hit.3735
46
45
MySQL 결과 제한 쿼리 (write.2013-03-23)인기글  Hit.3816
44
MySQL GROUP BY 에서 HAVING의 시점 (write.2012-11-05)인기글  Hit.4045
43
42
41
MySQL mysql-character-set (write.2012-05-22)인기글  Hit.4686
40
39
MySQL CAST 함수 (write.2012-04-01)인기글  Hit.4492
38
37
MySQL 데이타 유형 (write.2011-10-01)인기글  Hit.4746
열람중
MySQL 날짜 연산쿼리 (write.2010-07-21)인기글  Hit.6964
35
MySQL mysql-bin 로그 삭제하기 (write.2010-05-14)인기글  Hit.9854
34
MySQL optimize 테이블 최적화 (write.2009-12-09)인기글  Hit.9058
33
MySQL select , delete , update 사용법 (write.2009-12-09)인기글  Hit.7254
32
31
30
MySQL MySQL 5에서 한글이 ???로 보일때 (write.2009-08-21)인기글  Hit.10868
29
MySQL mysql 설치 A to Z (write.2009-08-19)인기글  Hit.11047
28
27
MySQL MySQL서버 정상 작동 확인 (write.2009-06-04)인기글  Hit.10812
26
게시물 검색
 
 
상호: 해피정닷컴 대표:정창용 사업자등록번호:119-05-36414 (08394) 서울시 구로구 디지털로 242 한화비즈메트로1차 1502호
전화: 070-7600-3500 팩스:02-865-3528 개인정보관리:정창용 mail@happyjung.com 에스크로확인
개인정보취급방침
COPYRIGHT 2001~2017 해피정닷컴. All rights reserved. 부가통신사업신고:서울체신청-1217 통신판매신고:2014-서울구로-0074
 
모바일 버전으로 보기