티스토리 뷰

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

mysql 날짜 및 시간처리

mysql 날짜 및 시간처리





1. 날짜와 시간 관련 데이터타입

     ㉠ DATE
     날짜 타입이다 '1000-01-01' 에서 '9999-12-31' 까지 나타낼 수 있다. 기본적으로 지원하는 형태는 'YYYY-MM-DD' 이다.

     ㉡ DATETIME
     날짜와 시간이 합쳐진 타입이며, '1000-01-01 00:00:00' 에서 '9999-12-31 23:59:59' 까지 나타낼 수 있다. 지원하는 형태는 

'YYYY-MM-DD HH:MM;SS' 이다

     ㉢ TIMESTAMP[M]
     날짜 및 시간 타입이다. '1970-01-01 00:00:00' 에서 2037년까지 나타냄 [M] 자리에는 출력될 길이를 나타내는 길이를 쓸 수 

있는데 14나 12, 8, 6을 쓸 수 있다. 숫자를 쓰지 않으면 기본적으로 14 자리를 나타낸다.

     ㉣ TIME
     시간 타입이다. '-838:59:59' 에서 '838:59:59' 까지 나타낼 수 있다. 기본적으로 지원하는 형태는 'HH:MM:SS' 이다

     ㉤ YEAR[(2/4)]
     연도를 나타내는 타입이다. 2자리 혹은 4자리로 나타낼 수 있으며 자리수를 지정하지 않게되면 4자리로 나타낸다. 4자리로 

사용할 때는 1901 에서 2155년까지 지원하며 2자리로 사용할 때는 1970 에서 2069 까지 지원



2 날짜 및 시간 함수

    ㉠ NOW() or SYSDATE() : 현재날짜
 
     mysql> select now(), sysdate();

+---------------------+---------------------+

| now()                  | sysdate()                 |

+---------------------+---------------------+

| 2017-10-16 08:56:39 | 2017-10-16 08:56:39 |

+---------------------+---------------------+

1 row in set (0.00 sec)



     ㉡ CURDATE() or CURRENT_DATE() 현재날짜

mysql> select curdate(), current_date();

+------------+----------------+

| curdate()  | current_date()   |

+------------+----------------+

| 2017-10-16 | 2017-10-16    |

+------------+----------------+

1 row in set (0.00 sec)



㉢ CURTIME or CURRENT_TIME(): 현재시간

mysql> select curtime(), current_time();

+-----------+----------------+

| curtime() | current_time()  |

+-----------+----------------+

| 09:02:07  | 09:02:07         |

+-----------+----------------+

1 row in set (0.00 sec)



㉣ DAYOFMONTH(date) :  몇일

mysql> select dayofmonth(now());

+-------------------+

| dayofmonth(now()) |

+-------------------+

|                16     |

+-------------------+

1 row in set (0.00 sec)



㉤ DAYOFWEEK(date) or WEEKDAY(date): 요일을 숫자로

mysql> select dayofmonth(now()), dayofweek(now());

+-------------------+------------------+

| dayofmonth(now()) | dayofweek(now()) |

+-------------------+------------------+

|                16 |                2 |

+-------------------+------------------+

1 row in set (0.00 sec)



      ㉥ DAYOFYEAR(date) : 1년중 며칠이 지났는지 확인

mysql> select dayofyear(now());
+------------------+
| dayofyear(now()) |
+------------------+
|              289 |
+------------------+
1 row in set (0.00 sec)



댓글