시간 비교 연산자

시간 비교 연산자

QA

시간 비교 연산자

본문

wr_1에 있는 '13:30' > 현재 시간의 조건이 충족되는 if문을 만드는 중입니다.

도무지 13:30' > 현재 시간의 조건이 성립이 되지 않는군요.

 

13:30' < 현재 시간의 조건은 성립이 되어 얻고자 하는 결과가 출력이 되는군요.

 

wr_1에 있는 '13:30' > 현재 시간의 조건 중에 13:30이 현재 시간과 어떤 값의 차이가 있나요.

즉 wr_1에 있는 '13:30' 의 값과 현재시간 호출한 13:30의 차이점이 무엇인가요.

 

 

이 질문에 댓글 쓰기 :

답변 4

SELECT 
TIME(NOW()) now_time,
TIME('13:00:00') promise_time,
if (TIME(NOW()) > TIME('13:00:00'), '오후 1시가넘었네요','오후1시전이에요') what_time

 

 

MySql에서 수행시켜보세요

시간 비교를 하려면 데이터 형식을 date로 바꾸셔야 합니다.

wr_1에 저장되어있는 형태는 단순히 문자열 형태로 저장되어있으며, 비교를 하실때는 php함수 등을 이용하여 데이터형식을 변환 후 비교하셔야 합니다

님 질문자는 아니지만 감솨합니다. 해보란것 해봤습니다.


SELECT TIME( '13:00' ) , TIME( '13:00:00' ) , if( '03:00' > '13:00:00', '03:00', '13:00:00' ) , if( '13:00' > '13:00:00', '13:00', '13:00:00' ) , if( '23:00' > '13:00:00', '23:00', '13:00:00' ) 

결과

TIME( '13:00' ) TIME( '13:00:00' ) if( '03:00' > '13:00:00', '03:00', '13:00:00' ) if( '13:00' > '13:00:00', '13:00', '13:00:00' ) if( '23:00' > '13:00:00', '23:00', '13:00:00' )
13:00:00 13:00:00 13:00:00 13:00:00 23:00

mysql의 if 문에서 time 비교는 time형 끼리 되어야 합니다



time의 형태는 00:00:00 입니다

time 함수로 날짜형을 인자값으로 넘기면
일자는 제외하고 날짜형의 time결과를 리턴합니다

님께서 테스트 해보신 형태의 if 문 안의 값은 문자형입니다

문자와 문자 비교는 유니코드의 순번 비교가 되서 값이 달라질수있습니다

-------------

일부댓글수정합니다.

댓글을 전철에서 읽다보니 약간 혼동을 했네요

정상적으로 잘되신다는 말씀이셨군요 ^^ 감사합니다

답변을 작성하시기 전에 로그인 해주세요.
전체 28
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT