首批通过分布式安全可靠测评,为关键业务系统打造
COMPARE
更新时间:2026-06-29 15:16:18
COMPARE 函数用于比较两个完整的 LOB 或两个 LOB 的一部分。
语法
DBMS_LOB.COMPARE (
lob_1 IN BLOB,
lob_2 IN BLOB,
amount IN INTEGER := DBMS_LOB.LOBMAXSIZE,
offset_1 IN INTEGER := 1,
offset_2 IN INTEGER := 1)
RETURN INTEGER;
DBMS_LOB.COMPARE (
lob_1 IN CLOB CHARACTER SET ANY_CS,
lob_2 IN CLOB CHARACTER SET lob_1%CHARSET,
amount IN INTEGER := DBMS_LOB.LOBMAXSIZE,
offset_1 IN INTEGER := 1,
offset_2 IN INTEGER := 1)
RETURN INTEGER;
参数解释
| 参数 | 解释 |
|---|---|
| lob_1 | 第一个用于比较的 LOB 定位器。 |
| lob_2 | 第二个用于比较的 LOB 定位器。 |
| amount | 要比较的字节数(对于 BLOB)或字符数(对于 CLOB)。 |
| offset_1 | 第一个用于比较的 LOB 上的字节或字符偏移量(原点为 1)。 |
| offset_2 | 第二个用于比较的 LOB 上的字节或字符偏移量(原点为 1)。 |
返回值
返回值为
INTEGER:如果比较成功则为0,否则为非零。如果
amount、offset_1或offset_2中的任何一个不是有效的 LOB 偏移值,返回值为NULL。有效的偏移量在 1 到LOBMAXSIZE范围内。
使用说明
您只能比较相同数据类型的 LOB(BLOB 类型的 LOB 与其他 BLOB,CLOB 与 CLOB)。
如果数据在
offset和amount参数指定的范围内完全匹配,则COMPARE返回0。如果第一个 CLOB 小于第二个,则COMPARE返回-1;如果大于第二个,则返回1。对于固定宽度为 n 字节的 CLOB,如果
COMPARE的输入amount参数指定为大于DBMS_LOB.LOBMAXSIZE/n,则 COMPARE 匹配大小范围为DBMS_LOB.LOBMAXSIZE/n或Max(length (clob1)、length(clob2)),以其中较小者为准。