ORACLE ORA22922 不存在的LOB值解决方法

原创 2015年11月18日 23:15:23

出现这个错误很多时候是使用了wmsys.wm_concat的同时使用了group ,distinct 或者union,本来两者没有问题,问题在于:

1.Oracle Database 10g Enterprise Edition Release 10.2.0.5.0以后的版本wmsys.wm_concat查询出的是LOB类型

2.oralce的SQL语句中若查询了LOB字段是不能使用distinct,union,和group by等关键字的。

所以出现了以上错误,具体例子如下:

改之前

SELECT
        o.id,
      replace(wmsys.wm_concat(m.prod_id),',','&') product_id , 


FROM t_order  o
inner JOIN hbms_marprod_batch  m ON o.mar_id=m.mar_id
GROUP BY o.id;

改之后的:
SELECT
        o.id,
      (select replace(wmsys.wm_concat(m.prod_id),',','&') from hbms_marprod_batch where m.mar_id=o.mar_id ) product_id , 


FROM t_order  o;

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

SpringMVC+mybatis +oracle wm_concat 报错 ORA-22922: 不存在的 LOB

今天在使用wm_concat 的时候遇到一个很奇怪的问题  当语句超过十条的时候会报  ORA-22922: 不存在的 LOB 值  把语句拿出来又没有报错 最后终于找到问题  to_char(wm...

Oracle ORA-22922 错误

测试环境是Oracle 10g 10.2.0.4 : select *   from (select t.*, ROWNUM num           from (select t.user_...
  • Cages
  • Cages
  • 2012-04-13 13:52
  • 11629

ORA-22922: 不存在的 LOB 值

这二天一直在做那个自定义报表管理,

用WM_CONCAT查询数据的时候超过10条报不存在的lob值, 弄了一上午终于搞定了!

我原先的sql:         SELECT ut.userid       AS USERID,                ut.operat...
  • Mli_Mi
  • Mli_Mi
  • 2016-12-20 18:18
  • 2666

ORA-22922: 不存在的 LOB 值解决办法

to_char(wm_concat(字段)) as 别名改成 wm_concat(to_char(字段)) as 别名 就没问题

ORA-22922: 不存在的 LOB 值

在dblink中不要使用clob类型,clob类型是引用类型,相当于指针,通过dblink调用的函数必定是别的数据库,指针存储在当前数据库,别的数据库肯定是找不到这个指针了。

曾经面试给问到了Java保留小数问题

4种方法,都是四舍五入,例: import java.math.BigDecimal; import java.text.DecimalFormat; import java.text....

ORA-22922 错误 wm_concat 函数的替代方案

create or replace TYPE zh_concat_im AUTHID CURRENT_USER AS OBJECT (   CURR_STR VARCHAR2(32767),   ST...

hadoop-0.21.0-eclipse-plugin无法在eclipse中运行解决方案

LINUX下将hadoop-0.21自带的hadoop eclipse plugin放到eclipse dropins目录中无法正常运行,使用eclipse -consolelog 发现找不到hado...
  • Cages
  • Cages
  • 2012-04-10 16:55
  • 1049
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)