自由飛翔

          我在仰望,java之上

          統計

          留言簿(2)

          我關注的blog

          閱讀排行榜

          評論排行榜

          oracle并交差

          轉載:http://chenhua-1984.iteye.com/blog/350354

          集合操作有 并,交,差 3種運算。 

           union :得到兩個查詢結果的并集,并且自動去掉重復行。不會排序 

           union all:得到兩個查詢結果的并集,不會去掉重復行。也不會排序 

           intersect:得到兩個查詢結果的交集,并且按照結果集的第一個列進行排序 

           minus:得到兩個查詢結果的減集,以第一列進行排序 

          例子: 

            下面是兩個表:一個主修課程表,一個選修課程表。 

          這個是主修課程表:minors 

               create table minors( 
                   minor_id number primary key, 
                   minor_name varchar2(30) not null, 
                   credit_hour number(2) 
                ) 

          插入3條記錄:                

                insert into minors values(10101,'計算機原理',4) 
                insert into minors values(10201,'自動控制原理',3) 
                insert into minors values(10301,'工程制圖原理',4) 

          下面創建選修課程表minors2 

                 create table minors2( 
                   minor_id number primary key, 
                   minor_name varchar2(30) not null, 
                   credit_hour number(2) 
                 ) 

          插入兩條記錄: 
                  insert into minors2 values(10201,'自動控制原理',3) 
                 insert into minors2 values(10301,'工程制圖原理',4)   

          兩個表使用union all:得到如下結果 

                  select minor_id,minor_name,credit_hour from minors union all 
                 select minor_id,minor_name,credit_hour from minors2 order by     credit_hour 

          結果: 
              
          MINOR_ID MINOR_NAME                     CREDIT_HOUR 
          ---------- ------------------------------ ----------- 
               10201 自動控制原理                             3 
               10201 自動控制原理                             3 
               10101 計算機原理                               4 
               10301 工程制圖原理                             4 
               10301 工程制圖原理                             4 

          兩個表使用union :得到如下結果 

          select minor_id,minor_name,credit_hour from minors union 
              select minor_id,minor_name,credit_hour from minors2 order by credit_hour 

          結果: 

          MINOR_ID MINOR_NAME                     CREDIT_HOUR 
          ---------- ------------------------------ ----------- 
               10201 自動控制原理                             3 
               10101 計算機原理                               4 
               10301 工程制圖原理                             4 

          兩個表使用intersect :得到如下結果 

               select minor_id,minor_name,credit_hour from minors intersect 
              select minor_id,minor_name,credit_hour from minors2 

          結果: 

          MINOR_ID MINOR_NAME                     CREDIT_HOUR 
          ---------- ------------------------------ ----------- 
               10201 自動控制原理                             3 
               10301 工程制圖原理                             4 

          兩個表使用minus :得到如下結果 

              select minor_id,minor_name,credit_hour from minors minus 
              select minor_id,minor_name,credit_hour from minors2 

          結果: 

          MINOR_ID MINOR_NAME                     CREDIT_HOUR 
          ---------- ------------------------------ ----------- 
               10101 計算機原理                               4



          Gavin

          posted on 2011-08-18 17:34 GavinMiao 閱讀(481) 評論(0)  編輯  收藏 所屬分類: oracle


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 新乡市| 旺苍县| 滦平县| 常熟市| 宁武县| 休宁县| 台中市| 莆田市| 杂多县| 常宁市| 绥江县| 正宁县| 斗六市| 霸州市| 富裕县| 虞城县| 北流市| 米易县| 五莲县| 汝城县| 景德镇市| 汕头市| 潍坊市| 阿荣旗| 昭苏县| 榕江县| 抚远县| 库尔勒市| 民乐县| 通山县| 舒兰市| 大姚县| 汉川市| 越西县| 林甸县| 嫩江县| 卢氏县| 宜州市| 舟曲县| 高台县| 渭南市|