SQL语句查询,同表group by 提取有两个相同字段的数据
表结构tb_submit(有主键,keyid)
custidsubmitdate
1err2013/5/1 11:00:01
1ok2013/5/1 11:00:03
1err2013/5/1 11:00:02
2err2013/5/1 12:00:01
2ok2013/5/1 11:00:03
2err2013/5/1 11:00:02
3err2013/5/1 12:00:01
3ok2013/5/1 11:00:03
3ok2013/5/1 11:00:02
现在想要提取tb_submit其中的数据。
同个custid下 有两条submit为err状态,且两个err状态的时间相差10秒内,跪求代码!
比如上面的例子,就会提取出
custidsubmitdate
1err2013/5/1 11:00:01
1err2013/5/1 11:00:02
2err2013/5/1 12:00:01
2err2013/5/1 11:00:02
谢谢各位大牛!!!。
分享到:
------解决方案--------------------
with t1 as
(select t.custid,
(t.day - lag(t.day) over(partition by t.custid order by day)) * 24 * 60 * 60 lday,
count(1) over(partition by custid) cnt