我有一个包含两列的表,即类型和时间。数据包括两种类型:A和B.
实际数据包括在表中交替出现的两种类型及其各自的时间戳(即,行1:a,t1;行2:b,t2;行3:a,t3;行4:b,t4)。如何计算A型和B型之间的所有时间差(即,我需要(t2-t1)和(t4-t3))。
谢谢,我很感激使用sql join
的答案答案 0 :(得分:1)
您可以尝试这样的事情:
SELECT B.MyTIME-A.MyTIME
FROM (SELECT MyROW , MyTYPE, MyTIME, ROW_NUMBER() OVER (ORDER BY MyTIME ASC) AS RNA FROM MyTable WHERE MyTYPE='A') A
INNER JOIN
(SELECT MyROW , MyTYPE, MyTIME, ROW_NUMBER() OVER (ORDER BY MyTIME ASC) AS RNB FROM MyTable WHERE MyTYPE='B')B
ON B.RNB=A.RNA