我正在处理带时间戳的记录,需要基于时间戳差异进行内部连接。我一直在使用
DATEDIFF
DATEDIFF
=1或2或3…或15)记录是否只连接一次?或者,我的表是否包含表1中的重复记录(例如,记录1与表2中的记录4连接,其中差异为4秒,也与表2中差异为11秒的记录7连接)?
我的语句现在起作用的原因是没有寄存器的记录间隔小于6秒,因此即使有多个时间戳匹配,寄存器的匹配也消除了这个问题。
我的发言目前是:
SELECT *
INTO AtriumSequoiaJoin5
FROM Atrium INNER JOIN Sequoia ON Atrium.Reader = Sequoia.theader_pos_name
WHERE (
((DateDiff(s,[Atrium].[Date2],[Sequoia].[theader_tdatetime]))=0
Or (DateDiff(s,[Atrium].[Date2],[Sequoia].[theader_tdatetime]))=1
Or (DateDiff(s,[Atrium].[Date2],[Sequoia].[theader_tdatetime]))=2
Or (DateDiff(s,[Atrium].[Date2],[Sequoia].[theader_tdatetime]))=3
Or (DateDiff(s,[Atrium].[Date2],[Sequoia].[theader_tdatetime]))=4
Or (Datediff(s,[Atrium].[Date2],[Sequoia].[theader_tdatetime]))=5)
)
ORDER BY Sequoia.theader_id;