728x90
현재 일자 보다 시간단위로 시간 분 까지 체크해서 작은 데이터를 모두 셀렉트 하는 쿼리문
SELECT *,
LEFT(SO.sv_time, 2) AS sv_time_hours,
RIGHT(SO.sv_time, 2) AS sv_time_minutes
FROM shop_order SO
WHERE 1=1
AND SO.ci_gubun = 'CS001'
AND SO.ord_status > 'OR10'
AND SO.ci_maching_state='MS10'
AND CONCAT(SO.sv_start_date, ' ', LEFT(SO.sv_time, 2), ':', RIGHT(SO.sv_time, 2)) < NOW();
1000 으로 sv_time 에 데이터가 있다면 left 와 right 함수로 잘라서 가운데는 : 로 붙여서 날짜 타입으로 concat 로 문자열을 합쳐서 now 함수와 비교하면 조회 된다.
만약 어제 일자 까지로 조회 하고 싶다면 CURDATE() - INTERVAL 1 DAY
SELECT * FROM shop_order SO
WHERE 1=1
AND SO.ci_gubun = 'CS001'
AND SO.ord_status > 'OR10'
AND SO.ci_maching_state='MS10'
AND sv_start_date < CURDATE() - INTERVAL 1 DAY;
로 현재 일자에서 마이너스 1 day 를 해서 어제 일자 보다 작은 일자를 모두 찾는다.
728x90
'MYSQL' 카테고리의 다른 글
mysql 리액트 만나이 계산 (0) | 2024.11.11 |
---|---|
쿠폰일자 사용여부 체크 쿼리문 true false 로 받아 오기 (0) | 2024.11.08 |
sql 쿼리문예제 null 체크 와 case 문 동시에 마이너스일 경우 0 으로 (0) | 2023.04.25 |
mysql 문자열 자르기 select 구문 (0) | 2023.04.19 |
sql 문자열 합치기 (0) | 2022.09.14 |