SQL检查值是否接近另一个表中的任何值

时间:2016-08-12 06:07:28

标签: sql

有一个sql问题的问题。以下是两个表格:

ID   |   Timestamp
1    |   143
2    |   429

Timestamps_master
150
322
539

我想问的问题是:第一个表中有多少ID的时间戳在timestamps_master中的时间戳的10秒内。所以在上面的设置中,它应该是1.

在sql之外,我只是做了一些循环,但是无法弄清楚sql的等价物是什么。

感谢您的任何想法!

2 个答案:

答案 0 :(得分:3)

select Id from tablename where(diff(Timestamps_master,Timestamp)<=10)or (diff(Timestamps_master,Timestamp)>=-10);

答案 1 :(得分:0)

SELECT t1.id, t1.timestamp 
FROM t1, t2 
WHERE t1.timestamp BETWEEN t2.time-10 and t2.time+10