AdSense

網頁

2018/12/1

Oracle 插入一百萬筆隨機產生的數值資料

在Oracle中新增一百萬筆資料範例如下。

例如現在有兩個資料表分別是顧客(CUSTOMER)及訂單(ORDER)資料表,為一對多關係(一個顧客有多筆訂單)。

目前CUSTOMER資料如下:

  CUSTOMER_ID   CUSTOMER_NAME  
 ------------- --------------- 
            1   John           
            2   Bill           
            3   Mary           

CUSTOMER_ID型態為NUMBER

訂單(ORDER)以ORDER.CUSTOMER_ID為外鍵關聯於CUSTOMER.CUSTOMER_IDORDER_ID型態為NUMBER

插入100萬筆資料的方法如下:

INSERT INTO "ORDER" (ORDER_ID, CUSTOMER_ID) 
SELECT LEVEL, FLOOR(DBMS_RANDOM.VALUE(1,4)) FROM DUAL
CONNECT BY LEVEL <= 1000000;

FLOOR(DBMS_RANDOM.VALUE(1,4)用來產生隨機範圍的整數。

完成後印出以下訊息

已插入. 1,000,000 個資料列
Elapsed: 00:00:05.015

ORDER_ID排序查詢10000到10010筆資料結果如下:

  ORDER_ID   CUSTOMER_ID  
 ---------- ------------- 
     10000             2  
     10001             1  
     10002             1  
     10003             1  
     10004             2  
     10005             2  
     10006             3  
     10007             1  
     10008             3  
     10009             2  
     10010             1  

參考:

沒有留言:

AdSense