ホームページ >データベース >mysql チュートリアル >MySQL の日付文字列 (例: 「2012 年 4 月 15 日 12:00AM」) を Unix タイムスタンプに変換するにはどうすればよいですか?

MySQL の日付文字列 (例: 「2012 年 4 月 15 日 12:00AM」) を Unix タイムスタンプに変換するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-02 15:36:11228ブラウズ

How to Convert a MySQL Date String (e.g.,

MySQL: 日付文字列を Unix タイムスタンプに変換する

日付文字列を Unix タイムスタンプに変換することは、時間を扱うときに便利なテクニックです。センシティブdata.

問題:

ユーザーが日付文字列を次の形式から Unix タイムスタンプに変換しようとすると問題が発生します:

Apr 15 2012 12:00AM

データベースから取得した日付文字列には AM サフィックスが含まれており、ユーザーが以前に CONVERT 関数を使用しようとした際に、失敗しました。

解決策:

日付文字列を Unix タイムスタンプに正常に変換するには、MySQL 関数の組み合わせを使用できます:

  1. STR_TO_DATE: 形式指定を使用して、文字列を DATETIME オブジェクトに変換します'%M %d %Y %h:%i%p'.
  2. UNIX_TIMESTAMP: DATETIME オブジェクトを Unix タイムスタンプに変換します。

以下コードは正しいアプローチを示しています:

SELECT UNIX_TIMESTAMP(STR_TO_DATE('Apr 15 2012 12:00AM', '%M %d %Y %h:%i%p'))

さらに、必要に応じて、日付形式を変更するには、FROM_UNIXTIME 関数を使用できます。

SELECT FROM_UNIXTIME(UNIX_TIMESTAMP(STR_TO_DATE('Apr 15 2012 12:00AM', '%M %d %Y %h:%i%p')), '%m-%d-%Y %h:%i:%p')

これにより、日付が mm-dd-yyyy hh:mm:ss 形式に変換されます。

ドキュメント:

これらの関数の詳細については、MySQL ドキュメントを参照してください。対象:

  • [UNIX_TIMESTAMP](https://dev.mysql.com/doc/refman/8.0/en/date-and-time-functions.html#function_unix-timestamp)
  • [FROM_UNIXTIME](https://dev.mysql.com/doc/refma n/8.0/en/date-and-time-functions.html#function_from-unixtime)
  • [STR_TO_DATE](https://dev.mysql.com/doc/refman/8.0/en/date- and-time-functions.html#function_str-to-date)

以上がMySQL の日付文字列 (例: 「2012 年 4 月 15 日 12:00AM」) を Unix タイムスタンプに変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。