【问题标题】:Case insensitive search on clob fields在 clob 字段上进行不区分大小写的搜索
【发布时间】:2014-09-02 13:29:28
【问题描述】:

我正在尝试对 clob 字段执行不区分大小写的搜索。 我不想使用upper 和regexp_like。 Alter session 也不适合我。 我试图把这样的索引:

create index
   ind_ci
on
   table
(
   nlssort( column, 'NLS_SORT=BINARY_CI')
);

但是,它似乎在 clob 字段上失败了。如何使用索引达到目标?

【问题讨论】:

    标签: sql oracle indexing clob


    【解决方案1】:

    很遗憾,NLSSORT 函数不直接支持 CLOB 数据。但是,CLOB 可以通过隐式数据转换作为参数传入。

    你可以看看how implicit data conversion happens。

    另外,你可以阅读Oracle – Case Insensitive Sorts & Compares。

    【讨论】:

    • 对不起,我完全没有线索。
    • 文档链接清楚地阐述了如何隐式处理 CLOB 以进行转换,以便您可以在 CLOB 上使用 NLSSORT。
    • 您只能转换到限制。如果 clob 文件较长,则无法轻松转换。
    • 因为你需要分块进行。我只是想让你为你的利益寻找和学习。随便搜一下如何分块转换CLOB。
    • 如果我想搜索我没有在这里问过。除此之外,问题是我怎样才能用索引来做到这一点。没有转化。
    猜你喜欢
    • 1970-01-01
    • 2017-12-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-17
    • 2013-02-24
    • 1970-01-01
    • 1970-01-01
    • 2017-02-09
    相关资源
    最近更新 更多