中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

數據庫中如何操作大數據集

發布時間:2021-12-13 15:14:34 來源:億速云 閱讀:119 作者:小新 欄目:關系型數據庫

這篇文章給大家分享的是有關數據庫中如何操作大數據集的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

一、子查詢插入數據

1、語法

  1. INSERT INTO table [ column (, column) ] subquery;

2、說明:
   您可以使用INSERT語句向一個表中添加行,其中的值來自于查詢結果集。
   插入子句的列列表中列及其數據類型的數量必須與子查詢中的值和數據類型相匹配。
3、例句:

  1. INSERT INTO EMPL3

  2. SELECT *

  3.   FROM employees;

二、WITH CHECK OPTION

1、語法:

  1. insert into (<select clause> WITH CHECK OPTION) values (...)

2、說明:
   insert進subquery里的這張表里
   如果不滿足subquery里的where條件的話,就不允許插入。
   如果插入的列有不在subquery作為檢查的where條件里,那么也會不允許插入。
   如果不加WITH CHECK OPTION則在插入時不會檢查。
   這里注意,subquery其實是不會實際執行的。
3、例句

  1. INSERT INTO

  2.   (SELECT EMPLOYEE_ID, LAST_NAME, EMAIL, HIRE_DATE, JOB_ID, SALARY

  3.      FROM EMPLOYEES

  4.     WHERE DEPARTMENT_ID = 50 WITH CHECK OPTION)

  5. VALUES

  6.   (99998,

  7.    'Smith',

  8.    'JSMITH',

  9.    TO_DATE('1999-06-07', 'yyyy-mm-dd'),

  10.    'ST_CLERK',

  11.    5000);

三、INSERT ALL

1、語法:
   a) 無條件

  1. INSERT [ALL] [conditional_insert_clause]

  2. [insert_into_clause values_clause] (subquery)

   b) 有條件

  1. INSERT [ALL]

  2. [WHEN condition THEN] [insert_into_clause values_clause]

  3. [ELSE] [insert_into_clause values_clause]

2、說明
   a) 如果沒有when條件,則會對所有表進行插入操作
   b) 如果有when條件,則對每一個when條件都進行檢查,如果滿足條件就執行插入操作。
3、例句:

  1. --無條件

  2. INSERT ALL

  3.   INTO SAL_HISTORY

  4. VALUES (EMPID, HIREDATE, SAL)

  5.   INTO MGR_HISTORY

  6. VALUES (EMPID, MGR, SAL)

  7. SELECT EMPLOYEE_ID EMPID, HIRE_DATE HIREDATE, SALARY SAL, MANAGER_ID MGR

  8.   FROM EMPLOYEES

  9.  WHERE EMPLOYEE_ID > 200;

  10.  

  11.  --有條件

  12.  INSERT ALL

  13.   WHEN SAL > 10000

  14.   THEN INTO SAL_HISTORY

  15. VALUES (EMPID, HIREDATE, SAL)

  16.   WHEN MGR > 200

  17.   THEN INTO MGR_HISTORY

  18. VALUES (EMPID, MGR, SAL)

  19. SELECT EMPLOYEE_ID EMPID, HIRE_DATE HIREDATE, SALARY SAL, MANAGER_ID MGR

  20.   FROM EMPLOYEES

  21.  WHERE EMPLOYEE_ID > 200;

四、INSERT FIRST

1、語法:

  1. INSERT [FIRST]

  2. [WHEN condition THEN] [insert_into_clause values_clause]

  3. [ELSE] [insert_into_clause values_clause]

2、說明:
  對于每一行數據,只插入到第一個when條件成立的表,不繼續檢查其他條件。
3、例句:

  1. INSERT FIRST

  2.   WHEN SAL > 25000

  3.   THEN INTO SPECIAL_SAL

  4. VALUES (DEPTID, SAL)

  5.   WHEN HIREDATE LIKE ('%00%')

  6.   THEN INTO HIREDATE_HISTORY_00

  7. VALUES (DEPTID, HIREDATE)

  8.   WHEN HIREDATE LIKE ('%99%')

  9.   THEN INTO HIREDATE_HISTORY_99

  10. VALUES (DEPTID, HIREDATE)

  11.   ELSE INTO HIREDATE_HISTORY

  12. VALUES (DEPTID, HIREDATE)

  13. SELECT DEPARTMENT_ID DEPTID, SUM(SALARY) SAL, MAX(HIRE_DATE) HIREDATE

  14.   FROM EMPLOYEES

  15.  GROUP BY DEPARTMENT_ID;

五、MERGE

1、語法:

  1. MERGE INTO table_name table_alias

  2.   USING (table|view|sub_query) alias

  3.   ON (join condition)

  4.   WHEN MATCHED THEN

  5.     UPDATE SET

  6.     col1 = col_val1,

  7.     col2 = col2_val

  8.   WHEN NOT MATCHED THEN

  9.     INSERT (column_list)

  10.     VALUES (column_values);

2、說明:
  Merge用來從一個表中選擇一些數據更新或者插入到另一個表中。而最終是用更新還是用插入的方式取決于該語句中的條件。
3、例句:

  1. MERGE INTO empl3 c

  2. USING employees e

  3.    ON (c.employee_id = e.employee_id)

  4.  WHEN MATCHED

  5.  THEN UPDATE SET

  6.       c.first_name = e.first_name,

  7.       c.last_name = e.last_name,

  8.       ...

  9.       c.department_id = e.department_id

  10.  WHEN NOT MATCHED

  11.  THEN INSERT VALUES

  12.       (e.employee_id, e.first_name, e.last_name,

  13.        e.email, e.phone_number, e.hire_date, e.job_id,

  14.        e.salary, e.commission_pct, e.manager_id,

  15.        e.department_id);

六、Flashback Version Query

1、語法:

  1. VERSIONS BETWEEN TIMESTAMP [lower bound] AND [upper bound]

  2. VERSIONS BETWEEN SCN [lower bound] AND [upper bound]

2、說明:
  通過versions between能夠查看指定時間段內undo表空間中記錄的不同版本
3、例句:

  1. SELECT SALARY

  2.   FROM EMPLOYEES3 VERSIONS BETWEEN SCN MINVALUE AND MAXVALUE

  3.  WHERE EMPLOYEE_ID = 107;

感謝各位的閱讀!關于“數據庫中如何操作大數據集”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

祁门县| 英吉沙县| 华池县| 高碑店市| 黔西| 昭平县| 台州市| 准格尔旗| 水城县| 桐城市| 托克逊县| 武城县| 平利县| 东乌珠穆沁旗| 山丹县| 东乡县| 金阳县| 新和县| 万源市| 福建省| 金堂县| 通海县| 库伦旗| 高碑店市| 镶黄旗| 即墨市| 上饶县| 道孚县| 柏乡县| 油尖旺区| 拉萨市| 宁陕县| 彭泽县| 东乌珠穆沁旗| 洪江市| 登封市| 凤凰县| 顺义区| 香格里拉县| 中山市| 皮山县|