SQL> create table testa as select rownum a,dbms_random.string('a',5) b from dual connect by rownum<6;表被创建SQL> select * from testa;         A B
---------- --------------------------------------------------------------------------------
         1 CBPdK
         2 xYtxD
         3 hwVYK
         4 DoJjK
         5 ySDdK

解决方案 »

  1.   

    利用楼上的正解
    select rownum a,dbms_random.string('a',5),to_char(rownum,'00000000') b from dual connect by rownum<100000;
      

  2.   

    对不起,我试了一下,我在Oracle92下面 rownum<100000,最多只能出来100条记录,不知道为什么?
    请 cenlmmx(学海无涯苦作舟)  解释一下,谢谢
      

  3.   

    SQL> create table testa as select rownum a,dbms_random.string('a',5) b from dual connect by rownum<6;SQL> SELECT * FROM TESTA;         A B
    ---------- ----------
             1 hHcYY
             2 ELyuk
             3 rXNHc
             4 NVlEU
             5 OcmIaSQL> select rownum a,dbms_random.string('a',5) b from dual connect by rownum<6;         A B
    ---------- ----------
             1 WbsBNSQL> SELECT * FROM (select rownum a,dbms_random.string('a',5) b from dual connect by rownum<6);         A B
    ---------- ----------
             1 feRdN
             2 YlUGZ
             3 HgPQq
             4 biZnm
             5 EDsYG注意到没有,受 DUAL 这个特殊表的影响,直接select就只有一行。
    但是如果把带有 CONNECT BY 的语句作为一个子查询,就可以得到期望的行数。在 CREATE TABLE AS 语句中后面的select实际上是一个子查询。
      

  4.   

    http://www.itpub.net/showthread.php?s=&postid=3590761
      

  5.   

    已连接到 Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 SQL> select rownum from dual connect by rownum<102;    ROWNUM
    ----------
             1
             2
             3
             4
             5
             6
             7
             8
             9
            10
            11
            12
            13
            14
            15
            16
            17
            18
            19
            20    ROWNUM
    ----------
            21
            22
            23
            24
            25
            26
            27
            28
            29
            30
            31
            32
            33
            34
            35
            36
            37
            38
            39
            40
            41    ROWNUM
    ----------
            42
            43
            44
            45
            46
            47
            48
            49
            50
            51
            52
            53
            54
            55
            56
            57
            58
            59
            60
            61
            62    ROWNUM
    ----------
            63
            64
            65
            66
            67
            68
            69
            70
            71
            72
            73
            74
            75
            76
            77
            78
            79
            80
            81
            82
            83    ROWNUM
    ----------
            84
            85
            86
            87
            88
            89
            90
            91
            92
            93
            94
            95
            96
            97
            98
            99
           100
           101101 行 已选择SQL> select rownum a,dbms_random.string('a',5) b from dual connect by rownum<6;         A B
    ---------- --------------------------------------------------------------------------------
             1 MSlpC
             2 spirA
             3 npVmG
             4 DFGEp
             5 lRKrA