sql >> データベース >  >> RDS >> Mysql

CONVERT_TZ()の例– MySQL

    MySQLでは、CONVERT_TZ()を使用して、あるタイムゾーン間で日時値を別のタイムゾーンに変換できます。 働き。この関数は3つの引数を受け入れます。日時の値、元のタイムゾーン、および変換するタイムゾーン。

    以下の構文と例。

    構文

    構文は次のとおりです。

    CONVERT_TZ(dt,from_tz,to_tz)

    ここでdt は日付/時刻、from_tz は元のタイムゾーンであり、to_tz 変換するタイムゾーンです。

    使用例を次に示します。

    SELECT CONVERT_TZ('2020-12-01 01:00:00','+00:00','+08:00') AS Result;

    結果:

    +---------------------+
    | Result              |
    +---------------------+
    | 2020-12-01 09:00:00 |
    +---------------------+

    名前付きタイムゾーン

    'US/Eastern'などの名前付きタイムゾーンを使用することもできます 、'Europe/Moscow''MET' 、など。

    これを行うには、最初にタイムゾーンテーブルを設定する必要があります。 MySQLのインストール手順では、タイムゾーンテーブルが作成されますが、ロードされません。したがって、最初にこれらのテーブルにデータを入力する必要があります。

    最初にタイムゾーンテーブルにデータを入力せずに、この関数で名前付きタイムゾーンを使用しようとすると、null値が取得されます。

    SELECT CONVERT_TZ('2020-12-01 01:00:00','Europe/Helsinki','US/Eastern') AS Result;

    結果:

    +--------+
    | Result |
    +--------+
    | NULL   |
    +--------+

    タイムゾーンテーブルにデータを入力する場合でも、定期的に更新する必要がある場合があることに注意してください。これは、情報が時々変更される可能性があるためです。これについての詳細は、MySQLドキュメントWebサイトのMySQLサーバータイムゾーンサポートを参照してください。


    1. java.sql.TimestampでJoda-Timeを使用する方法

    2. Oracleセッションで日付形式を変更する方法

    3. MySQLでデータベースを作成する方法

    4. T-SQLのバグ、落とし穴、およびベストプラクティス–ウィンドウ関数