当前位置: 首页 > 面试题库 >

如何在Oracle中比较两个CLOB值

梁丘飞鸾
2023-03-14
问题内容

我有两张桌子要赞扬。列之一是CLOB类型。我想做这样的事情:

select key, clob_value source_table
minus
select key, clob_value target_table

不幸的是,Oracle无法对Clob执行减号操作。我怎样才能做到这一点?


问题答案:

格式是这样的:

dbms_lob.compare(  
lob_1    IN BLOB,  
lob_2    IN BLOB,  
amount   IN INTEGER := 18446744073709551615,  
offset_1 IN INTEGER := 1,  
offset_2 IN INTEGER := 1)  
RETURN INTEGER;

如果dbms_lob.compare(lob1,lob2)= 0,则它们是相同的。

这是一个基于您的示例的示例查询:

Select key, glob_value  
From source_table Left Join target_table  
  On source_table.key = target_table.key  
Where target_table.glob_value is Null  
  Or dbms_lob.compare(source_table.glob_value, target_table.glob_value) <> 0


 类似资料:
  • 问题内容: 这是一个简单的问题-给定两个URL,是否有一些内置方法或一个Apache库来确定它们在逻辑上是否相等? 例如,这两个URL相等: 问题答案: 尽管(以及有问题的)这些特定示例 未 返回,但我认为这是唯一可以假定等效的情况(因为HTTP协议中没有空路径)。 这些URI 并且可以 不 被认为是等价的。 也许您可以使用包装在实用程序中的方法来显式处理此特定情况。

  • 问题内容: Java中两个double值的简单比较会产生一些问题。让我们考虑以下Java中的简单代码段。 上面的代码似乎返回,表达式的求值,但是没有。它之所以返回,是因为该表达式的求值实际上是预期的因此不等于,因此条件的求值为。解决这种情况的最佳建议方法是什么? 问题答案: 基本上,你不应该进行精确比较,而应该执行以下操作:

  • 问题内容: 我有两个Arraylist 其包含以下值是 AllProcessList arraylist包含所有Java进程,RunningProcessList arraylist包含当前正在运行的进程。我想比较这两个arraylist并显示是否未运行该进程。例如,比较两个列表并要显示以下进程未运行。 我使用了以下代码,但无法正常工作。 问题答案: 查看List的文档,尤其是removeAll(

  • 问题内容: 我有两个。每个大小为100000。我想比较它们并计算匹配的元素。 这是我的代码: 在这里比较过程要花费很多时间。 如何解决和优化此问题。 问题答案: 您应该使用:返回一个包含collection1中所有元素的集合,这些元素也处于collection2中。

  • 问题内容: 我正在尝试比较两个日期,而我只想比较日期部分而不是时间部分,这就是我在程序中存储日期的方式: 我有一个: 我想用 但是由于还涉及时间部分,所以我无法获得正确的答案。我该如何解决我的问题? 我不想使用JODA-TIME 问题答案: 您可以像这样逐个比较价值 要么 如果您使用Date类,请考虑改用Calendar类这是最优雅的解决方案,为此使用Calendar和Comparator 用法:

  • 问题内容: 因为不接受运算符,有没有一种快速比较两个字典的简便方法? 通过比较两个字典,我的意思是检查它们是否具有相同的精确键,并且对于每个键都具有相同的值。 问题答案: 正如Hot Licks所述,您可以使用NSDictionary方法isEqualToDictionary()来检查它们是否相等,如下所示: 您还可以实现自定义运算符“ ==”,如下所示: Xcode 9•Swift 4 从文档开