设定2个动作
1,发射导弹
2,命中目标
如果发射导弹在5分钟内命中目标 返回值为1 未命中返回值为2
将命中目标2的信息和时间筛选出来
导弹类型 动作 时间
A 发射 2015-03-26 12:49:33
A 发射 2015-03-26 12:50:18
A 命中 2015-03-26 12:51:07
B 发射 2015-03-26 14:09:49
C 发射 2015-03-26 18:21:17
C 命中 2015-03-26 18:25:16
C 发射 2015-03-26 16:10:29
C 命中 2015-03-26 16:10:30
结果为
导弹类型 动作 时间
A 命中 2015-03-26 12:51:07
C 命中 2015-03-26 18:25:16
C 命中 2015-03-26 16:10:30
------解决思路----------------------
SELECT *
FROM TB T1
WHERE T1.动作='命中' AND EXISTS(SELECT 1 FROM TB T2
WHERE T1.导弹类型=T2.导弹类型 AND T2.动作='发射'
AND T1.时间>T2.时间 AND T1.时间<=DATEADD(MINUTE,5,T2.时间))