>데이터 베이스 >MySQL 튜토리얼 >MySQL에 밀리초 정밀도 타임스탬프를 저장하는 방법은 무엇입니까?

MySQL에 밀리초 정밀도 타임스탬프를 저장하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-12-02 09:06:13537검색

How to Store Millisecond Precision Timestamps in MySQL?

MySQL에서 밀리초 단위의 정밀도 타임스탬프를 저장하는 방법

MySQL에서 정확한 타임스탬프 정밀도를 보장하는 것은 높은 시간 해상도를 요구하는 애플리케이션에 매우 중요합니다. 타임스탬프의 밀리초 정밀도를 얻으려면 다음 단계를 고려하세요.

소수 초 시간 데이터 유형이 있는 열 선언

소수 초 데이터 유형이 있는 열을 선언하려면 다음을 확인하세요. MySQL 버전 5.6.4 이상을 사용하고 있습니다. NOW(3)를 사용하여 버전을 확인하고, 오류가 발생하면 지원되는 버전으로 업그레이드하세요.

적절한 시간 데이터 유형 선택

밀리초 해상도의 경우, DATETIME(3)을 사용합니다. 마이크로초 단위로 해결하려면 TIMESTAMP(6)를 사용하세요.

선언 예

CREATE TABLE IF NOT EXISTS 확률` (<br>id int(11) NOT NULL AUTO_INCREMENT,<br>segment_id int(11) NOT NULL,<br>확률 float NOT NULL,<br>measured_at DATETIME(3) NOT NULL,<br>provider_id int(11) NOT NULL,<br>PRIMARY KEY(id)<br>) ;<br>&lt ;/pre>`</p>
<p><strong>변환 밀리초를 DATETIME(3)</strong></p>
<p>Unix epoch 이후의 밀리초를 DATETIME(3) 값으로 변환하려면 다음 표현식을 사용합니다.</p>
<p>`<pre class="brush:php;toolbar:false">FROM_UNIXTIME (밀리초 * 0.001)<br>
`

초 미만의 시간 정밀도를 위한 업그레이드 고려

이전 MySQL 버전을 사용 중이고 초 미만의 시간 정밀도가 필요한 경우, 업그레이드하는 것이 좋습니다. 해결 방법을 사용하면 복잡성이 발생할 수 있습니다. 그러나 업그레이드가 가능하지 않은 경우 변환 표현식

`

FROM_UNIXTIME(col * 0.001)<br>
을 사용하여 타임스탬프를 BIGINT 또는 DOUBLE 열에 숫자로 저장하는 것이 좋습니다. `

이러한 지침을 따르면 밀리초 단위의 정밀도로 타임스탬프를 효과적으로 저장하고 검색할 수 있습니다. MySQL은 애플리케이션의 시간적 정확성을 보장합니다.

위 내용은 MySQL에 밀리초 정밀도 타임스탬프를 저장하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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