Oracle 选择 NCLOB 类似于某个字符串的位置

标签 oracle select nclob

我有一个 Oracle 表,在该表中有一列 NCLOB 类型。我想对其执行SELECT LIKE,如下所示:

SELECT
*
FROM
T_WEB_TASK_IT
WHERE DBMS_LOB.substr( T_WEB_TASK_IT.ISSUE_DESCRIPTION , 32000, 1)
LIKE '%Turning on the%'

但它不起作用,我收到一条错误消息:

String buffer too small

但我不明白怎么会这样,因为我知道该特定记录的该列中没有那么多字符!

最佳答案

您可以使用DBMS_LOB.INSTR函数在lob中搜索字符串。像这样:

SELECT *
FROM   T_WEB_TASK_IT
WHERE  DBMS_LOB.INSTR( T_WEB_TASK_IT.ISSUE_DESCRIPTION , 'Turning on the') > 0

关于Oracle 选择 NCLOB 类似于某个字符串的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20424273/

相关文章:

database - Oracle nclob 字段 : remove newline (or carriage return) characters

oracle - 如何在生成的序列号中附加一个字符串

SQL - CASE WHEN 计算不同的值

javascript - jquery 单击在 Chrome 中的选择标签上不起作用

mysql - mysql 查询中包含更多表的日期的 if 条件

database - 当一列从varchar变成nclob时Oracle开始做全表扫描

SQL - 如何统计某一年的数据数量?

oracle - 无法创建 PoolableConnectionFactory(IO 错误 : Connection reset) tomcat oracle

选择的 Angular4 占位符