0

ミリ秒を文字列として格納する mysql データベース テーブルに文字列列があります。現在、2012-03-12T14:11:23-0400 のような ISO 8601 形式で日付を表示したいと考えています。

SELECT DATE_FORMAT(TIMESTAMP(response_time),"%Y-%m-%dT%H:%i:%s%Q") AS date FROM table_name;

しかし、上記のクエリの結果、タイムゾーンは表示されません

2012-10-29T14:55:47Q

しかし、私が望む実際の結果は

2012-10-29T14:55:47-05:00
4

1 に答える 1

1

%QMySQL では有効な日付指定子ではありません。

MySQL のタイムゾーンには、次の方法でアクセスできます。

SELECT @@global.time_zone, @@session.time_zone

上記が返された場合は、 SYSTEMMySQL がシステムのタイムゾーンを使用するように設定されていることを意味し、MySQL を介して直接取得する以外の方法で取得する必要があります。

とは言っても、これはシステムが現在実行しているタイムゾーンを示すだけであり、日付/時刻の値として保存されている日付については何もタイムゾーンに関する情報とともに保存されていません.

于 2012-10-30T08:25:07.240 に答える