1

タイムスタンプでいっぱいの列を持つデータベースがあります。以下のコードを使用して通常の時刻形式 (12:00:01) に変換しながら、php ですべての値を返しますが、それらをグラフを真剣に制限する方法が必要です (現在 23,922 行)。10 ~ 15 分間隔で値を使用することを考えていましたが、それを行う方法が見つかりません。誰にもお勧めはありますか?乾杯、ジョン。

while($info = mysql_fetch_array( $query )) 
{ 
   echo date("H:i:s", $info['timestamp']);
}
4

1 に答える 1

0

「タイムスタンプ」が実際のタイムスタンプ (列タイプのタイムスタンプ) である場合、次のように単純な > または < 演算子を使用して結果をフィルタリングできます。

それらが整数または文字列である場合は、FROM_UNIXTIME() またはデータに一致する可能性のある他の関数を使用できます (DB が MySQL であると仮定すると、https: //dev.mysql.com/doc/refman/5.5/en/date-and-time を参照してください) -functions.html )

データが varchar として保存されている場合でも、MySQL DB はいくつかの計算には十分スマートですが、適切な型で保存するほど効率的ではありませんが、機能します。

SELECT `timestamp`
  FROM yourtable
  WHERE `timestamp` >= ( 
    SELECT MAX( `timestamp` ) max
      FROM  yourtable
  ) - ( 60 *15 ) -- 15 minutes
于 2013-02-20T16:12:19.613 に答える