我有一个系统可以将字段中项目的 XYZ 位置报告给 SQL 数据库。我试图通过过滤已知的时间点来过滤误报(仅识别移动的项目),当项目通过一个点时,以及项目在通过一个点后应该在什么位置。
我的逻辑是,如果一个项目在一个位置和时间并且在另一个位置和时间,它一定已经移动了。
所以我有这个查询:
SELECT tag_ID, X_location*3.28, Y_location*3.28, locate_time
FROM tag_blink_history
WHERE
(LOCATE_TIME > '2013-01-29 11:05:51'
AND LOCATE_TIME < '2013-01-29 11:06:56'
AND ((y_location*3.28 > 61)
AND (y_location*3.28 < 67.5))
AND ((x_location*3.28 > 14.5)
AND (x_location*3.28 < 17.5)))
AND (((y_location*3.28 > 70)
AND (y_location*3.28 < 75))
AND locate_time < '2013-01-29 11:06:50' )
ORDER BY tag_id DESC
有任何想法吗?我意识到我用上述查询向 SQL 提出的要求是同时在两个地方(这不可能发生),但我想要的是同时存在于这两个空间约束中的记录 - 我想要它们同时存在的记录,而不是要求同时在两者中的记录。