Combine records to calculate - Tom Cooper |
29-Mar-07 11:34:25
|
Assuming that your time columns are of type datetime, then something like
Select incd, m.vehi as vehi1, e.vehi as vehi2, m.time, DateDiff(mi, m.time,
e.time) As diff
From yourtable m
Inner Join yourtable e On m.incd = e.incd
Where m.vehi Like 'm%' And e.vehi Like 'e%'
Tom |
 |
| |
Combine records to calculate - Roy Goldhammer |
29-Mar-07 11:46:51
|
Here is another example to solve it:
CREATE TABLE #tmp(id int,
Orig varchar(3),
Arrival datetime)
insert #tmp values(123,'m03','12:04')
insert #tmp values(123,'e05','12:07')
insert #tmp values(124,'m02','14:09')
insert #tmp values(124,'e07','14:06')
select ID, max(case when left(Orig,1) = 'm' then Orig else '' end) vehi1
, max(case when left(Orig,1) = 'e' then Orig else '' end) vehi2
, max(case when left(Orig,1) = 'm' then Arrival else '' end) time
, datediff(minute, max(case when left(Orig,1) = 'm' then Arrival else ''
end),
max(case when left(Orig,1) = 'e' then Arrival else '' end)) diff
from #tmp
GROUP BY ID |
 |
| |