从ORA中单纯递归出1到100的所有数字,该怎么写这个语句
不要使用存储过程或者游标,谢谢

解决方案 »

  1.   

    你建立一个sequence,CREATE SEQUENCE seq INCREMENT BY 1  START WITH 1 MAXVALUE 100   MINVALUE 1  CYCLE ;然后select就可以了。
      

  2.   

    我的意思是写成SQL,不单纯只是
    取得 1。。100
    可能还有2。。200这样的情况,所以要写成SELECT
      

  3.   

    CREATE SEQUENCE 方法可以创建多少 ,它算是表还是SQL中的一段,用过后就释放吗,类似动态SQL
      

  4.   

    按照我的想法,应用矩阵之间的交叉关系,如果两个表中有2条记录的话,那两个表交叉就是2*2=4
                                        如果两个表中有4条记录的话,那两个表交叉就是4*4=16
                                        如果两个表中有16录的话,那两个表交叉就是16*16=256脚本如下:select rownum from (
    select aa.a from (
    select a.a from (select '1' as a,'2' as b from dual   union all 
                   select '1' as a,'2' as b from dual
                   ) a,
                  (select '1' as a,'2' as b from dual   union all 
                   select '1' as a,'2' as b from dual
                 ) b
               ) aa,(
    select a.a from (select '1' as a,'2' as b from dual   union all 
                   select '1' as a,'2' as b from dual
                   ) a,
                  (select '1' as a,'2' as b from dual   union all 
                   select '1' as a,'2' as b from dual
                  ) b
               ) bb
    ) aaa,
    (
    select aa.a from (
    select a.a from (select '1' as a,'2' as b from dual   union all 
                   select '1' as a,'2' as b from dual
                   ) a,
                  (select '1' as a,'2' as b from dual   union all 
                   select '1' as a,'2' as b from dual
                 ) b
               ) aa,(
    select a.a from (select '1' as a,'2' as b from dual   union all 
                   select '1' as a,'2' as b from dual
                   ) a,
                  (select '1' as a,'2' as b from dual   union all 
                   select '1' as a,'2' as b from dual
                  ) b
               ) bb)bbb where rownum<101
      

  5.   

    当然你也可以搞成256*256或者更大,反正大于你想要的数字就可以,
    然后用rownum控制就好了
      

  6.   

    你这样搞有必要吗?你的语句的效率会怎么样?
    有现成的seq不用,为什么要写这么麻烦的语句?
    不明白
      

  7.   

    不是的,不是我愿意,其实我也不喜欢这样,但是我们的楼主就是不喜欢你的seq,我刚开始的想法也是,要不这样,你可以找一个长度大于100的表,然后把他的rownum打出来算了,那样简单吧,高手可以把你的qq给我吗?有时间聊聊
      

  8.   

    newboy3205579(新手上路) 
    你说的我早就想过了,可以使用系统表来做,一般系统表会随时间的增加而增加,能到100W的条数,不过要是你们知道更好的方法也可以晚些时候告诉我,谢谢