【SQL查詢】集合查詢之INTERSECT

lhrbest發表於2016-11-13

SQL查詢】集合查詢之INTERSECT

 

1  BLOG文件結構圖

wps610B.tmp

 

2  前言部分

 

2.1  導讀和注意事項

各位技術愛好者,看完本文後,你可以掌握如下的技能,也可以學到一些其它你所不知道的知識,~O(∩_∩)O~:

① 集合查詢之INTERSECT的使用

Tips:

① 本文在itpub(http://blog.itpub.net/26736162)、部落格園(http://www.cnblogs.com/lhrbest)和微信公眾號(xiaomaimiaolhr)上有同步更新。

② 文章中用到的所有程式碼、相關軟體、相關資料及本文的pdf版本都請前往小麥苗的雲盤下載,小麥苗的雲盤地址見:http://blog.itpub.net/26736162/viewspace-1624453/

③ 若網頁文章程式碼格式有錯亂,請下載pdf格式的文件來閱讀。

④ 在本篇BLOG中,程式碼輸出部分一般放在一行一列的表格中。其中,需要特別關注的地方我都用灰色背景和粉紅色字型來表示,比如在下邊的例子中,thread 1的最大歸檔日誌號為33,thread 2的最大歸檔日誌號為43是需要特別關注的地方;而命令一般使用黃色背景和紅色字型標註;對程式碼或程式碼輸出部分的註釋一般採用藍色字型表示。

  List of Archived Logs in backup set 11

  Thrd Seq     Low SCN    Low Time            Next SCN   Next Time

  ---- ------- ---------- ------------------- ---------- ---------

  1    32      1621589    2015-05-29 11:09:52 1625242    2015-05-29 11:15:48

  1    33      1625242    2015-05-29 11:15:48 1625293    2015-05-29 11:15:58

  2    42      1613951    2015-05-29 10:41:18 1625245    2015-05-29 11:15:49

  2    43      1625245    2015-05-29 11:15:49 1625253    2015-05-29 11:15:53

[ZHLHRDB1:root]:/>lsvg -o

T_XLHRD_APP1_vg

rootvg

[ZHLHRDB1:root]:/>

00:27:22 SQL> alter tablespace idxtbs read write;

====2097152*512/1024/1024/1024=1G

本文如有錯誤或不完善的地方請大家多多指正,ITPUB留言或QQ皆可,您的批評指正是我寫作的最大動力。

 

2.2  本文簡介

最近心情很低落,今天又下雨,本來想著睡到12點的,結果一發小打電話過來,聊了聊近況,然後問了一道SQL的面試題,這對我而言都是最簡單的查詢。由於發小是剛入IT行業,準備找Java的工作,所以心裡還是擔心他是否聽懂我的意思了,穩妥起見,還是自己寫段程式碼發他吧。在這裡也預祝髮小可以順利找到自己心儀的工作。

發小的問題是:如何找出2張表中的相同資料然後插入到第三張空表中?這個面試題的解答有多種辦法,但是最直接也最簡單的方式就是集合查詢,利用INTERSECT這個交集查詢就可以了。下面是整個實驗過程。

第二章 實驗部分

SQL> CREATE TABLE T_A (ID NUMBER,NAME VARCHAR2(5));

 

Table created.

 

SQL> CREATE TABLE T_B (ID NUMBER,NAME VARCHAR2(5));

 

Table created.

 

SQL> CREATE TABLE T_C (ID NUMBER,NAME VARCHAR2(5));

 

Table created.

 

SQL> INSERT INTO T_A VALUES(1,'a');

 

1 row created.

 

SQL> INSERT INTO T_A VALUES(2,'b');

 

1 row created.

 

SQL> INSERT INTO T_A VALUES(3,'c');

 

1 row created.

 

SQL> INSERT INTO T_A VALUES(4,'d');

 

1 row created.

 

SQL> INSERT INTO T_A VALUES(5,'e');

 

1 row created.

 

SQL> INSERT INTO T_B VALUES(3,'c');

 

1 row created.

 

SQL> INSERT INTO T_B VALUES(4,'d');

 

1 row created.

 

SQL> INSERT INTO T_B VALUES(6,'f');

 

1 row created.

 

SQL> INSERT INTO T_B VALUES(7,'g');

 

1 row created.

 

SQL> commit;

 

Commit complete.

 

SQL> SELECT * FROM T_C;

 

no rows selected

 

SQL> INSERT INTO T_C

  2  SELECT ID ,NAME FROM T_A

  3  INTERSECT

  4  SELECT ID ,NAME FROM T_B;

 

2 rows created.

 

SQL> COMMIT;

 

Commit complete.

 

SQL> SELECT * FROM T_C;

 

        ID NAME

---------- -----

         3 c

         4 d

 

SQL>

 

第三章 實驗中用到的SQL總結

DROP TABLE T_A;

DROP TABLE T_B;

DROP TABLE T_C;

CREATE TABLE T_A (ID NUMBER,NAME VARCHAR2(5));

CREATE TABLE T_B (ID NUMBER,NAME VARCHAR2(5));

CREATE TABLE T_C (ID NUMBER,NAME VARCHAR2(5));

INSERT INTO T_A VALUES(1,'a');

INSERT INTO T_A VALUES(2,'b');

INSERT INTO T_A VALUES(3,'c');

INSERT INTO T_A VALUES(4,'d');

INSERT INTO T_A VALUES(5,'e');

 

INSERT INTO T_B VALUES(3,'c');

INSERT INTO T_B VALUES(4,'d');

INSERT INTO T_B VALUES(6,'f');

INSERT INTO T_B VALUES(7,'g');

 

commit;

 

INSERT INTO T_C

SELECT ID ,NAME FROM T_A

INTERSECT

SELECT ID ,NAME FROM T_B;

 

About Me

...............................................................................................................................

本文作者:小麥苗只專注於資料庫的技術,更注重技術的運用

本文在itpub(http://blog.itpub.net/26736162)、部落格園(http://www.cnblogs.com/lhrbest)和個人微信公眾號(xiaomaimiaolhr)上有同步更新

本文itpub地址:http://blog.itpub.net/26736162/viewspace-2128358/

本文部落格園地址:http://www.cnblogs.com/lhrbest/p/6058227.html

本文pdf版小麥苗雲盤地址:http://blog.itpub.net/26736162/viewspace-1624453/

● QQ群:230161599     微信群:私聊

聯絡我請加QQ好友(642808185),註明新增緣由

於 2016-11-13 09:00 ~ 2016-11-13 11:00 在泰興公寓完成

文章內容來源於小麥苗的學習筆記,部分整理自網路,若有侵權或不當之處還請諒解

版權所有,歡迎分享本文,轉載請保留出處

...............................................................................................................................

手機長按下圖識別二維碼或微信客戶端掃描下邊的二維碼來關注小麥苗的微信公眾號:xiaomaimiaolhr,免費學習最實用的資料庫技術。

wpsF09D.tmp

 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26736162/viewspace-2128358/,如需轉載,請註明出處,否則將追究法律責任。

相關文章