Oracle數據庫多重子查詢嵌套的坑

在Oracle數據庫中多重子查詢的使用

代碼如下:

SELECT T.*, ROWNUM RN
  FROM (SELECT B.*,
               NVL(A.AMOUNT, 0) AMOUNT,
               V.FULLNAME,
               DECODE(SHARE_TYPE, 1, '***', 0, '%%%') SHARE_TYPE
          FROM (SELECT COUNT(S.COMMENTS) AMOUNT,
                       P.BO_PROBLEM_MANAGE_ID BO_PROBLEM_MANAGE_ID
                  FROM BO_SHARE_COMMENTS S, BO_PROBLEM_SHARE P
                 WHERE P.BO_PROBLEM_SHARE_ID = S.APPID(+)
                 GROUP BY P.BO_PROBLEM_MANAGE_ID) A,
               BO_PROBLEM_SHARE B,
               V_USER_ORG V
         WHERE B.BO_PROBLEM_MANAGE_ID = A.BO_PROBLEM_MANAGE_ID(+)
           AND B.CREATE_USERID = V.USERID
           AND B.SHARE_STATUS = '2'
         ORDER BY B.CREATE_DATE) T

上面代碼運行時,會報錯如下:
這裏寫圖片描述
看代碼看了很多遍還是沒有發現錯誤,然後就是各種子查詢拆開運行還是沒有發現錯誤.
附上問題所在的圖片:
這裏寫圖片描述
問題說明:在B.*中有SHARE_TYPE,後面又有SHARE_TYPE的字段導致運行SQL的時候區分不了字段.建議解決方法,字段重命名,或者不使用全表字段.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章