1

我有一个数据库,其中有一列充满时间戳,我让它返回 php 中的所有值,同时使用下面的代码将它们转换为正常时间格式(12:00:01),但看到我想把它们放到一个graph 我需要一种方法来严格限制它们(目前为 23,922 行)。我正在考虑以 10-15 分钟的间隔使用这些值,但找不到这样做的方法。有人有什么建议吗?干杯,约翰。

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

1 回答 1

0

如果您的“时间戳”是实际时间戳(列类型时间戳),您可以使用简单的 > 或 < 运算符来过滤结果,例如: where timestamp > "2013-02-20 16:10:00"

如果它们是整数或字符串,您可以使用 FROM_UNIXTIME() 或其他可能与您的数据匹配的函数(假设您的数据库是 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 回答