에스제이

반응형

안녕하세요, 오늘은 MYSQL에서 현재시간을 조회하는 함수인 NOW()와 SYSDATE()의 차이에 대해서 알아보도록 하겠습니다. 간단한 예제 쿼리로 차이점을 알아봅시다.

쿼리를 의도적으로 지연시키기 위해서 SELLP 함수를 사용하여 NOW()의 시간 차이를 조회해보겠습니다.

 

질의

SELECT NOW(), SLEEP(10), NOW() FROM DUAL;

결과

NOW() SLEEP(10) NOW()
2022-01-23 14:18:53 0 2022-01-23 14:18:53

 

결과를 해석해보면 하나의 트랜잭션(Transaction)에 여러개의 쿼리를 질의할 때 첫 번째 질의와 마지막의 질의의 결과값이 동일해야 하는 경우 NOW()의 함수를 사용합니다.

 

 

 

자, 이번엔 SYSDATE()로 조회해보겠습니다.

 

질의

SELECT SYSDATE(), SLEEP(10), SYSDATE() FROM DUAL;

결과

SYSDATE() SLEEP(10) SYSDATE()
2022-01-23 14:19:15 0 2022-01-23 14:19:25

 

SYSDATE() 함수는 트랜잭션이나 쿼리의 단위에 상관없이 SYSDATE() 함수가 질의된 시간을 반환합니다. 즉 시스템에서 실시간으로 반환되는 시간의 결과값을 출력하고 싶을 땐 SYSDATE() 함수를 사용하면 됩니다.

 

같으면서도 다른 SYSDATE()와 NOW()함수의 차이점에 대해서 알아보았습니다.

정독해 주셔서 감사합니다. :)~

반응형

공유하기

facebook twitter kakaoTalk kakaostory naver band