>데이터 베이스 >MySQL 튜토리얼 >MySQL에서 Epoch 번호를 사람이 읽을 수 있는 날짜로 변환하는 방법은 무엇입니까?

MySQL에서 Epoch 번호를 사람이 읽을 수 있는 날짜로 변환하는 방법은 무엇입니까?

Barbara Streisand
Barbara Streisand원래의
2024-10-26 16:28:031007검색

How to Convert Epoch Numbers to Human-Readable Dates in MySQL?

MySQL에서 에포크 번호를 사람이 읽을 수 있는 날짜로 변환

데이터베이스 관리 영역에서는 에포크 번호를 사람이 읽을 수 있는 날짜로 변환해야 하는 경우가 많습니다. 정의된 에포크 이후 특정 시점을 나타내는 에포크 번호는 일반적으로 MySQL과 같은 데이터베이스 시스템에 시간 데이터를 저장하는 데 사용됩니다.

다음을 나타내는 1389422614485와 같은 에포크 번호가 있는 가상 시나리오를 생각해 보세요. 특정 시점. 이 값의 데이터 유형은 varchar이며 이를 이해하기 쉬운 날짜 형식으로 변환하려고 합니다.

자세한 솔루션

MySQL에서 이 변환을 수행하려면 다음을 수행합니다. 수학 함수와 from_unixtime() 함수의 조합을 활용해야 합니다.

<code class="sql">mysql> select from_unixtime(floor(1389422614485/1000));</code>

설명

이 예에서는 from_unixtime() 함수를 사용하여 변환합니다. 일반적으로 에포크 이후의 밀리초를 나타내는 에포크 번호를 날짜 문자열로 변환합니다. 에포크 숫자는 밀리초 단위의 정밀도를 갖고 있는 것으로 나타나기 때문에 Floor(1389422614485/1000)를 사용하여 에포크 이후의 초로 변환합니다. 이는 from_unixtime()이 예상하는 입력입니다.

출력

+------------------------------------------+
| from_unixtime(floor(1389422614485/1000)) |
+------------------------------------------+
| 2014-01-11 12:13:34                      |
+------------------------------------------+

출력에는 'YYYY-MM-DD HH:MM:SS' 형식으로 지정된 에포크 번호에 해당하는 사람이 읽을 수 있는 날짜가 표시됩니다.

MySQL 8.0 이상 업데이트

MySQL 버전 8.0부터는 from_unixtime() 함수에서 밀리초로 작업할 때 Floor 함수가 더 이상 필요하지 않습니다. 밀리초 단위의 에포크 숫자를 인수로 직접 제공할 수 있습니다.

<code class="sql">mysql> select from_unixtime(1594838230234/1000);</code>

이 결과는 다음과 같습니다.

+------------------------------------------+
| from_unixtime(1594838230234/1000)        |
+------------------------------------------+
| 2020-07-15 18:37:10.2340                 |
+------------------------------------------+

이 개선된 쿼리 버전은 이제 나노초 정밀도도 지원합니다. .

위 내용은 MySQL에서 Epoch 번호를 사람이 읽을 수 있는 날짜로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.