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

MySqlSelectQueryでUTC日​​付をローカルタイムゾーンに変換する方法

    SELECT CONVERT_TZ()はそのために機能しますが、私には機能しません。

    なぜ、どのようなエラーが発生しますか?

    SELECT CONVERT_TZ(displaytime,'GMT','MET');
    

    列タイプがタイムスタンプまたは日付の場合は機能するはずです

    http:// dev .mysql.com / doc / refman / 5.0 / en / date-and-time-functions.html#function_convert-tz

    これがどのように機能するかをテストします:

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

    タイムゾーンテーブルを確認してください

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

    http://dev.mysql.com/doc /refman/5.5/en/time-zone-support.html

    これらのテーブルが空の場合は、タイムゾーンテーブルが初期化されていません。上記のリンクによると、mysql_tzinfo_to_sqlを使用できます タイムゾーンテーブルをロードするプログラム。これを試してください

    shell> mysql_tzinfo_to_sql /usr/share/zoneinfo
    

    または、機能しない場合は、続きを読む: http: //dev.mysql.com/doc/refman/5.5/en/mysql-tzinfo-to-sql.html



    1. SQLiteで特定の日付/時刻からの秒数を計算する

    2. ミリ秒単位のDateTimeの表現?

    3. OracleRACとシーケンス

    4. Python、SQLite、SQLAlchemyによるデータ管理