x是数字,你是说:
select 1 from table1
还是说x列是数字型的啊?
如果是x为整型的列直接那样不就行了?

解决方案 »

  1.   

    建一个sequence对象吧,然后使用这个对象
    create sequence test_seq start with 1 increment by 1 maxvalue 99 cache 10;
      

  2.   

    如果你只是想从表table1中得到一个“一个常数以一定步长的速度递增”
    可以用以下SQL实现:
    1)实现步长=1
    select rownum from test;
        ROWNUM
    ----------
             1
             2
             3
             4
             5
             6
             7
             8
             9
            10
            11
            12
            13
            14
    2)实现步长=2
    select r1,r2,r1+r2 r3 from (select rownum r1,rownum-1 r2 from test);
            R1         R2         R3
    ---------- ---------- ----------
             1          0          1
             2          1          3
             3          2          5
             4          3          7
             5          4          9
             6          5         11
             7          6         13
             8          7         15
             9          8         17
            10          9         19
            11         10         21
            12         11         23
            13         12         25
            14         13         27
      

  3.   

    "常数以一定步长的速度递增"      常数       步长       结果
    ---------- ---------- ----------
             6          5         11
             6          5         16
             6          5         21
             6          5         26
             6          5         31
             6          5         36
             6          5         41
             6          5         46
             6          5         519 rows selectedExecuted in 0.031 secondsselect 6 "常数",5 "步长",6+bc "结果" from (select rownum bc from test where rownum < 50)where mod(bc,5) = 0;
      

  4.   

    select rn*步长+基数  from (select 3 步长,1 基数,(rownum-1) rn from test) t;
    这里基数就是指你需要的第一个数从哪个数开始,步长就是递增速度。修改步长和基数的值即可得到你要的数列。起1增3数列
    ----------
             1
             4
             7
            10
            13
            16
            19
            22
            25
            28
            31
            34
            37
            40
      

  5.   

    建sequence
    create sequence seq0001 start with 1 increment by 1