当前位置: 首页 > 知识库问答 >
问题:

使用带union和CLOB字段的select时出现错误ORA-00932

沈运恒
2023-03-14

首先,这不是这个问题的重复。如果是的话,对不起,我不能通过阅读来解决我的问题。

ORA-00932: inconsistent datatypes: expected - got CLOB
SELECT TXT.t_txt 
  FROM CITADM.tb_avu_txt_grc GR  
 INNER JOIN CITADM.tb_avu_txt TXT   
    ON (GR.e_txt = TXT.e_txt and GR.u_txt = TXT.u_txt)  
 WHERE  TXT.u_lin_ord = 1
UNION
SELECT TXT.t_txt 
  FROM CITADM.tb_avu_txt_grc_cvd GRC  
 INNER JOIN CITADM.tb_avu_txt TXT  
    ON (GRC.e_txt = TXT.e_txt and GRC.u_txt = TXT.u_txt)  
 WHERE  TXT.u_lin_ord = 2

非常感谢。

共有1个答案

周越泽
2023-03-14

我认为问题在于使用union而不是union allunion运算符将合并这两个集合并消除重复项。由于不能比较CLOB类型,因此不可能进行重复消除部分。

使用UNION ALL不会尝试消除重复项(您可能根本没有重复项),所以它应该可以工作。

 类似资料:
  • 正如您所知,由于Oracle11g不支持json,我使用CLOB创建json数据,因为varchar2(32767)大小,但此时我得到了ORA-06502:PL/SQL:numeric或value错误。同时,数据大小为68075。为什么我得到错误,尽管Clob是支持4 gb的数据?

  • 你好 上面的查询包括: WITH子句-本条款的目的是从2011年至2016年间购买物品的客户中识别不同的。 第一次查询-查询的主要目的是检查上述WITH子句中是否存在任何选定的。此外,该查询还应检查所选的是否与特定的匹配,并在名为的列中将其标记为 第二次查询-此查询执行的操作与第一次查询几乎相同。唯一的区别是,它在名为“DRIVE_TYPE”的列中将标记为 您可能已经注意到,在这两个查询中,都有一

  • 我有一小段代码,抓取一些数据并生成SQL语句,将它们插入Oracle数据库。然后通过Oracle服务器上的JDBC驱动程序执行这些操作。 我遇到的问题是,如果这些语句包含一个TO_BINARY_DOUBLE调用,它们总是对我失败,而不是对我团队中的任何人失败,他们应该和我有完全相同的驱动程序和环境,这是非常奇怪的。 错误是: 希望有人能给我提供一些线索,或者给我指出正确的方向,试着找到它。

  • 在Java中,我在DB2上执行以下查询: 问题的原因是什么? 更新:准备语句的代码:

  • 我正在使用Struts 2.3.24.1,由于这里提到的错误,在切换到雅加达流实现之后,当我表单中的文件上载字段为空时,我发现了一个新的错误。我的表格如下(节略): 操作配置如下: 错误发生在方法,因为未设置文件名。这是意料之中的,因为文件上载字段不是必需的。我试着调试Struts代码,但看起来好像enctype总是触发临时文件的创建。当我切换回,但这又带来了我上面提到的问题。 有人知道如何解决这

  • 本文向大家介绍ORACLE出现错误1033和错误ORA-00600的解决方法,包括了ORACLE出现错误1033和错误ORA-00600的解决方法的使用技巧和注意事项,需要的朋友参考一下 在非法关机以后,Oracle数据库经常会出现这个错误: 这个显然是数据库没有办法启动,但是数据库服务还是可以启动,而程序则无法连接数据库。 首选找问题要看看数据库BDUMP目录下的ALERT文件具体报什么错误 最