SQL 현재시간 가져오기 GETDATE / SYSDATE / NOW

DB에서 현재시간을 가져오는 함수에 대해서 살펴보겠습니다.

MS-SQL, Oracle, MySql  각각 다른 함수를 지원합니다.

 

1. MS-SQL의 경우 GETDATE() 함수를 지원합니다.

  사용법은 아래와 같습니다.

SELECT GETDATE()

결과 : 2021-06-06 11:47:000 ( 현재시간 )

 

SELECT 절에서만 사용하는것은 아니고 WHERE절 등 현재시간이 필요한 곳에서 어디든지 사용할 수 있습니다.

SELECT *
  FROM TABLE A
 WHERE TIME_STAMP < GETDATE()

- TIME_STAMP가 현재시간 이전인 데이터만 출력하겠다는 내용입니다.

 

 

2. Oracle 의경우 SYSDATE를 사용합니다.

  사용법은 아래와 같습니다.

SELECT SYSDATE
  FROM DUAL

결과 : 2021-06-06 12:01:124

 

꼭 SELECT 절에서만 사용하는것은 아니고 WHERE절 등 현재시간이 필요한 곳에서 어디든지 사용할 수 있습니다.

SELECT *
  FROM TEMP_TABLE
 WHERE INPUT_DT < SYSDATE

- INPUT_DT 가 현재시간 이전인 데이터만 출력하겠다는 쿼리입니다.

 

 

3. MySql 의 경우 NOW 함수를 사용합니다.

  사용법은 아래와 같습니다.

SELECT NOW()

결과 : 2021-06-06 14:23:421

 

역시 WHERE절 등 현재시간이 필요한 곳에서 어디든지 사용할 수 있습니다.

SELECT *
  FROM T_TABLE
 WHERE COMPLETE_DT < NOW()

 

 

- COMPLETE_DT가 현재시간 이전인 데이터만 출력하는 쿼리입니다.

 

 

 

시간을 가져오는 방법에대해 살펴보았는데요~

시간을 가져온형태 그대로 밀리초(MS) 단위까지 출력하는 경우는 드물죠

원하는 형태로 출력하는 방법은 아래 글을 참조하시면 도움이 될 것 같습니다.

SQL 문자/날짜 형 변환 - TO_CHAR / TO_DATE / DATE_FORMAT / STR_TO_DATE / CONVERT (tistory.com)

 

SQL 문자/날짜 형 변환 - TO_CHAR / TO_DATE / DATE_FORMAT / STR_TO_DATE / CONVERT

데이터베이스를 사용하다면 날짜를 문자열로 또는 문자를 날짜로 바꿀 때가 있다 그럴 때 사용하는 내용이다 먼저 오라클에서 사용하는 함수이다 숫자 또는 날짜 데이터를 문자형으로 변경하

lcs1245.tistory.com