隨筆-28  評論-15  文章-81  trackbacks-0
           1.外部聯接"+"按其在"="的左邊或右邊分左聯接和右聯接.

              若不帶"+"運算符的表中的一個行不直接匹配于帶"+"預算符的表中的任何行,則前者的行與后者中的一個空行相匹配并被返回.
            若二者均不帶"+",則二者中無法匹配的均被返回.

              利用外部聯接"+",可以替代效率十分低下的 not in 運算,大大提高運行速度.
            
             例如:A和表B,B的部分內容包含在A,兩個表關聯后,要求顯示A的所有內容,B不能和A匹配的就用空格顯示,則兩者的表達為左聯接: A=B(+)

          2.左右連接的表帶有條件時,條件為is null 和 is not null
            SELECT A.ORDSEQ,B.ORDTY,A.RELORD FROM ORDREL A,ORD B
             WHERE A.ORDSEQ = B.ORDSEQ(+)
               AND A.RELORD = 5339
               AND B.ISSUPPLY (+) IS NOT NULL

          3.當A表和B表進行左連接時,C因為是B的子表,所以B表也要和C表進行左連接,這樣B表沒記錄時,C表也會沒記錄,相當于A表也和C表進行了左連接,保證A表的數據都能正常顯示
            SELECT A.ORDSEQ,B.ORDTY,A.RELORD FROM ORDREL A,ORD B,ORDITM C
             WHERE A.ORDSEQ = B.ORDSEQ(+)
               AND A.RELORD = 5339
               AND B.ISSUPPLY (+) IS NOT NULL
               AND B.ORDSEQ = C.ORDSEQ

          4.和字符串的右連接
            AND RT.TRANSACTION_TYPE (+)= 'RETURN TO VENDOR'
              

          posted on 2008-08-28 15:35 譚明 閱讀(370) 評論(0)  編輯  收藏 所屬分類: Oracle
          主站蜘蛛池模板: 洛阳市| 蛟河市| 三原县| 汶上县| 徐州市| 宿松县| 永顺县| 岑溪市| 柳江县| 淄博市| 大兴区| 深水埗区| 文水县| 民勤县| 砚山县| 拜泉县| 泾源县| 永川市| 佛山市| 东丽区| 汝阳县| 陇南市| 万安县| 蒙自县| 高雄县| 海盐县| 招远市| 衡山县| 玉树县| 库车县| 布尔津县| 泰来县| 城步| 灌南县| 庆元县| 余姚市| 东光县| 阜新| 甘洛县| 海宁市| 广西|