ORA-22922: 不存在的 LOB 值解決辦法


報錯語句:

select n1.cpname,n1.cids ,xx.* from (
select 
t.cpname,max(t.dz) dz ,count(cid) sbs,to_char( wm_concat(t.cid)) cids  
from VIEW_YQJMTZ_CID_INFO t where t.lx = '1'
group by t.cpname ) n1, VIEW_YQJMTZ_CID_INFO xx
where n1.cpname = xx.cpname

但是單獨執行里面的子查詢不報錯

select 
t.cpname,max(t.dz) dz ,count(cid) sbs,to_char( wm_concat(t.cid)) cids  
from VIEW_YQJMTZ_CID_INFO t where t.lx = '1'
group by t.cpname 

 

修改后語句:

select n1.cpname,to_char(n1.cids) ,xx.* from (
select 
t.cpname,max(t.dz) dz ,count(cid) sbs, wm_concat(t.cid) cids  
from VIEW_YQJMTZ_CID_INFO t where t.lx = '1'
group by t.cpname ) n1, VIEW_YQJMTZ_CID_INFO xx
where n1.cpname = xx.cpname

 

初步判斷,應該是wm_concat函數處理過的字段為clob類型,需要進行關聯時,不能先進行to_char,只能在最后數據查詢結果展示層進行to_char.

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM