ホームページ >データベース >mysql チュートリアル >MySQL クエリで CONVERT_TZ() が機能しないのはなぜですか?

MySQL クエリで CONVERT_TZ() が機能しないのはなぜですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-15 07:25:02913ブラウズ

Why Is CONVERT_TZ() Not Working in My MySQL Queries?

MySQL クエリで UTC 日付をローカル タイム ゾーンに変換する

MySQL クエリで UTC タイムスタンプをローカル タイム ゾーンに変換するには、次のようにします。 CONVERT_TZ() 関数。ただし、この関数の使用が常に成功するとは限らないことに注意することが重要です。

CONVERT_TZ() が失敗する理由

CONVERT_TZ() が機能しない場合は、いくつかの可能性があります理由:

  • タイムゾーンの指定が正しくありません: CONVERT_TZ() 関数に有効なタイムゾーン識別子を指定していることを確認してください。
  • 空のタイムゾーンテーブル: MySQL は、タイムゾーン変換を実行するためにタイムゾーンテーブルに依存します。これらのテーブルが空の場合は、mysql_tzinfo_to_sql プログラムを使用して初期化する必要があります。

CONVERT_TZ() を使用したクエリの例

次のクエリはタイムスタンプ列を変換します。 MET 時間までの表示時間と呼ばれるzone:

SELECT CONVERT_TZ(displaytime, '+00:00', '+04:00');

タイム ゾーン テーブルの確認

タイム ゾーン テーブルが初期化されているかどうかを確認するには、次のクエリを実行します。

SELECT * FROM mysql.time_zone;
SELECT * FROM mysql.time_zone_name;

タイムゾーンテーブルを初期化しています

タイム ゾーン テーブルが空です。次のコマンドを使用してロードします。

mysql_tzinfo_to_sql /usr/share/zoneinfo

タイム ゾーン テーブルが初期化されたら、CONVERT_TZ() を再度使用してみてください。それでも問題が発生する場合は、MySQL ドキュメントで詳細なトラブルシューティング手順を参照してください。

  • [日付と時刻の関数: CONVERT_TZ()](https://dev.mysql.com/doc/refman/ 5.0/en/date-and-time-functions.html#function_convert-tz)
  • [タイムゾーン]サポート](https://dev.mysql.com/doc/refman/5.5/en/time-zone-support.html)
  • [mysql_tzinfo_to_sql](https://dev.mysql.com/doc /refman/5.5/en/mysql-tzinfo-to-sql.html)

以上がMySQL クエリで CONVERT_TZ() が機能しないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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