SQL
MySQL SUBTIME 예제 (30분전까지 데이터 불러오는 쿼리)
Link2Me
2021. 3. 24. 20:23
728x90
SUBTIME(start_value, time) 은 start_value 에서 time만큼을 차감한 결과를 돌려준다.
SELECT SUBTIME('2015-08-01 01:30:10','02:50:20') AS subtime
// subtime -> 2015-07-31 22:39:50
SELECT SUBTIME('2015-08-01 01:30:10','2015-08-01 02:50:20') AS subtime
// subtime -> NULL
SELECT SUBTIME('2015-08-01 01:30:10.126587','00:50:20') AS subtime
// subtime -> 2015-08-01 00:39:50.126587
SELECT SUBTIME('2015-08-01 01:30:10.126587','00:50:20.020202') AS subtime
// subtime -> 2015-08-01 00:39:50.106385
SELECT SUBTIME('01:30:10.126587','02:50:20.020202') AS subtime
// subtime -> -01:20:09.893615
SELECT SUBTIME('01:30:10.126587','-02:50:20.020202') AS subtime
// subtime -> 04:20:30.146789
SELECT SUBTIME("10:24:21", "5");
결과는 10:24:16 ("5"는 5초를 의미)
CURDATE() 현재 연-월-일, CURTIME() 현재 시:분:초,
NOW()와 SYSDATE() 현재 연-월-일 시:분:초 출력
현재시간으로 부터 30분까지의 결과를 반환하고자 한다면....
where regdate > subtime(current_timestamp(), '0:30:0') and regdate < current_timestamp()
다른 방법으로
where regdate >= date_add(now(), interval -30 minutes)
where regdate >= date_add(now(), interval -1 day) // 1일전
728x90