1

我正在构建一个查询 GPS 坐标和时间戳表的系统。最终目标是向用户提供 GPS 点列表,这些点在他们到达某个点前一小时或一小时后记录。

现在我像这样从数据库中取出一组附近的点,然后通过将这些附近的点与我之前预选的点进行比较来对它们进行逻辑处理

$getnear = mysql_query("SELECT id, latitude, longitude, SQRT(
POW(69.1 * (latitude - $latitude), 2) +
POW(69.1 * ($longitude - longitude) * COS(latitude / 57.3), 2)) AS distance
FROM geolocalQ HAVING distance < 0.0311 ORDER BY distance") or die(mysql_error());
$neartable = array();

while($row = mysql_fetch_assoc($getnear)) {
$neartable[$row['id']] = $row['id'];
}       

我希望能够根据时间运行该数组的每个元素的逻辑。所以像:

$time=abs($querytime-$mytime)
if ($time<=1 hour) {
#Perform action
}

如何以这种格式从我的数据库中添加、减去和逻辑比较时间戳 2013-01-13 18:07:54 日期并不重要,所有计算都是在每天结束之前完成的,所以理论上我可以存储上午 12 点后数分钟内的数据。所以 1am 将被存储为 60, 2:30 被存储为 150,等等......想法?

4

1 回答 1

0

看起来您可以让数据库执行日期时间操作并过滤结果。

这些函数应该对 MySQL 有所帮助。

于 2013-01-13T23:29:18.913 回答