PHP code: select a.id, a.s, a.e,b.dis, a.S+b.dis-1 h from t20 a, (select rownum dis from (select max(e-s)+1 gap from t20) connect by rownum<=gap) b where a.e>=a.s+b.dis-1 order by a.id, 4 运行结果: ID S E DIS H ---------- ---------- ---------- ---------- ---------- 1 10 11 1 10 1 10 11 2 11 2 1 5 1 1 2 1 5 2 2 2 1 5 3 3 2 1 5 4 4 2 1 5 5 5 3 88 100 1 88 3 88 100 2 89 3 88 100 3 90 3 88 100 4 91 3 88 100 5 92 3 88 100 6 93 3 88 100 7 94 3 88 100 8 95 3 88 100 9 96 3 88 100 10 97 3 88 100 11 98 3 88 100 12 99 3 88 100 13 100 ..............
select a.id, a.s, a.e,b.dis, a.S+b.dis-1 h from t20 a, (select rownum dis from (select max(e-s)+1 gap from t20) connect by rownum<=gap) b where a.e>=a.s+b.dis-1 order by a.id, 4 运行结果: ID S E DIS H ---------- ---------- ---------- ---------- ---------- 1 10 11 1 10 1 10 11 2 11 2 1 5 1 1 2 1 5 2 2 2 1 5 3 3 2 1 5 4 4 2 1 5 5 5 3 88 100 1 88 3 88 100 2 89 3 88 100 3 90 3 88 100 4 91 3 88 100 5 92 3 88 100 6 93 3 88 100 7 94 3 88 100 8 95 3 88 100 9 96 3 88 100 10 97 3 88 100 11 98 3 88 100 12 99 3 88 100 13 100 ..............