利用一下ORACLE的ROWNUM机制来做点文章
我假设有这一张表 tt
a,上班日期(dd)
1,20080101
1,20080102
1,20080103
2,20080101
2,20080103
3,20080101
也可能是乱序的
第一步:排序
select * from tt t order by t.a,t.dd
第二步:日期-ROWNUM如果相同的话认为他们是连续的
select u.*,(u.dd-rownum)d from
(select * from tt t order by t.a,t.dd)u
第三步:,然后GORUP BY一下 ,想通的数量大于6
select p.a,count(1) from
(select u.*,(u.dd-rownum)d from
(select * from tt t order by t.a,t.dd)u)p
group by p.a,p.d having count(1)>=7