ホームページ > データベース > mysql チュートリアル > MySQL でエポック番号を人間が判読できる日付に変換するにはどうすればよいですか?

MySQL でエポック番号を人間が判読できる日付に変換するにはどうすればよいですか?

Barbara Streisand
リリース: 2024-10-26 16:28:03
オリジナル
1013 人が閲覧しました

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 でエポック番号を人間が判読できる日付に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート