♣ Tech & Biz Salon/Tech

MYSQL NOW() 에 DATE_FORMAT Function 씌우는 이유

TasteGod 2012. 3. 27. 16:20


NOW()

Returns the current date and time as a value in 'YYYY-MM-DD HH:MM:SS' or YYYYMMDDHHMMSS.uuuuuu format, depending on whether the function is used in a string or numeric context. The value is expressed in the current time zone.

mysql> SELECT NOW();
        -> '2007-12-15 23:50:26'
mysql> SELECT NOW() + 0;
        -> 20071215235026.000000


위의 내용은 MYSQL 매뉴얼의 NOW() 에 대한 설명 일부분.

난 매뉴얼로 NOW() 를 확인했었기에... NOW() 의 결과값은 2007-12-15 23:50:26 형태라고 생각하고 있었다.

( 그런데 실제 DB에서 SELECT DATE_FORMAT(NOW(),'%Y-%m-%d %H:%MM:%SS') 쿼리를 날리면
   2012-03-27 16:MarchM:02S 이렇게 결과가 나옴;; )

왜 이 글을 적냐면.....

코드리뷰중 요런 놈이 보여서
DATE_FORMAT(IFNULL(MAX(UPDT_DT), NOW()),'%Y-%m-%d %H:%i:%s')
-> DATE_FORMAT 불필요한 아닌가? 라고 코멘트를 달았는데...

DATE_FORMAT 은 필요한 것이었다.
안하면 군더더기가 붙는다.
자바단에서 그냥 NOW() 를 조회하면 2012-03-27 16:17:33.0 과 같이 보이네...