[mysql] MySQL을 사용하여 유닉스 타임 스탬프를 사람이 읽을 수있는 날짜로 변환

유닉스 타임 스탬프를 사람이 읽을 수있는 날짜로 변환하는 데 사용할 수있는 MySQL 함수가 있습니까? 유닉스 시간을 절약 할 수있는 하나의 필드가 있으며 이제 사람이 읽을 수있는 다른 필드를 추가하고 싶습니다.



답변

사용 FROM_UNIXTIME():

SELECT
  FROM_UNIXTIME(timestamp)
FROM
  your_table;

다음의 MySQL 문서FROM_UNIXTIME() 도 참조하십시오 .


답변

다른 답변 (이 글을 쓸 때)에서 누락되었지만 직접 명확하지 않은 것은 from_unixtime형식을 지정하기 위해 두 번째 매개 변수를 취할 수 있다는 것입니다.

SELECT
  from_unixtime(timestamp, '%Y %D %M %H:%i:%s')
FROM
  your_table


답변

나는 당신이 찾고있는 것이 FROM_UNIXTIME()


답변

특정 시간대에 유닉스 타임 스탬프가 필요하십니까?

mysql cli에 빠르게 액세스 할 수있는 경우 하나의 라이너가 있습니다.

mysql> select convert_tz(from_unixtime(1467095851), 'UTC', 'MST') as 'local time';

+---------------------+
| local time          |
+---------------------+
| 2016-06-27 23:37:31 |
+---------------------+

'MST'원하는 시간대로 교체하십시오 . 나는 애리조나 ?에 살고 있으므로 UTC에서 MST로 변환합니다.


답변

필드를 읽을 수있는 것으로 저장하는 것이 왜 귀찮습니까? 우리 만AS

SELECT theTimeStamp, FROM_UNIXTIME(theTimeStamp) AS readableDate
               FROM theTable
               WHERE theTable.theField = theValue;

편집 : 죄송합니다. 모든 것이 초가 아닌 밀리 초 단위로 저장됩니다. 고쳤다.


답변

DATE_FORMAT 함수를 사용할 수 있습니다. 다음 은 예제가 포함 된 페이지와 다른 날짜 구성 요소를 선택하는 데 사용할 수있는 패턴입니다.


답변

쉽고 간단한 방법 :

select from_unixtime(column_name, '%Y-%m-%d') from table_name