0

こんにちは、サードパーティの API を使用してサイトにフィードを表示しています。フィールドと呼ばれるフィールドとopentimedbclosetimeテーブルがあります。feedテーブルは 20 秒ごとに更新されています。問題なく動作していますが、問題は と にありopentimeますclosetime。サーバーの現在の時刻から 3 時間後 (サーバー時刻である可能性があります) を与えます。たとえば、サーバーの現在の時刻が午前 8:00 の場合、フィード テーブルはopentime午前 11:00 として更新されます (今から 3 時間後、時々変化します)。feedテーブルは API 呼び出しによって自動的に更新されるため、テーブルを変更することはできません。

したがって、これら2つの時間差( )を調べたいのですが、サーバー時間opentime - currenttimeに変換するにはどうすればよいですか。opentime

my-sqlクエリで次のコードを試しましたが、

TIMESTAMPADD(MINUTE,-180,FROM_UNIXTIME(opendate) // subtracting 3 hours(180 min) from the opendate.

これを行う他の方法はありますか?

ご指導ありがとうございました。

4

2 に答える 2

2

MySQL のデフォルトのタイム ゾーンを変更できます。これは、MySQL サーバーのデフォルトとして設定することも、接続ごとにオンザフライで設定することもできます。このようなもの:

set timezone='your timezone';

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

于 2012-10-22T06:13:17.790 に答える
0

mysql 構成のタイムゾーンを設定する

set timezone='your timezone';

それを試してみてください

SELECT TIMESTAMPDIFF(MINUTE,'2012-10-21', NOW()) as diff;
diff=1997
于 2012-10-22T06:18:48.070 に答える