摘要一组连续的数,去掉中间一些数,如何求出剩下的数的区间(即号段)?知道号段的起止,如何求出该号段内所有的数?知道一个大的号段范围和已经取过的号段,如何求出可......
摘要
一组连续的数,去掉中间一些数,如何求出剩下的数的区间(即号段)?知道号段的起止,如何求出该号段内所有的数?知道一个大的号段范围和已经取过的号段,如何求出可用的号段?利用Oracle提供的强大的查询功能以及分析函数,我们可以很轻松的解决上述问题。
n 关键词:
号段选取、连续数、断点、层次查询、分析函数、connect by、rownum、level、lead、lag
1. 问题的提出
在实际工作中,我们常常会碰到号段选取的问题,例如:
n 一组连续的数,去掉中间一些数,要求出剩下的数的区间(即号段)例如:一串数字为1,2,3,4,7,9,10,则号段为1-4,7-7,9-10
n 知道号段的起止,要求出该号段内所有的数例如:号段为1-3,15-15,则号段内所有的数为1,2,3,15
n 一组数,中间可能有断点,要求出缺失的数例如:一串数字为1,2,3,4,7,9,10,则缺失的数为5,6,8
1/13 1 2 3 4 5 6 下一页 尾页 |