Oracle 转换或删除CLOB的格式?

Oracle 转换或删除CLOB的格式?,oracle,oracle11g,Oracle,Oracle11g,我需要选择som数据,cols上的是CLOB 我目前正在使用到字符(DBMS\u LOB.SUBSTR(T.Tekst,4000,1)),但这会输出clob、文本格式和全部,类似于以下内容: {\rtf1\ansi\deff0\deftab254{\fonttbl{…和文本faaar 有没有办法让我只获取文本,而不获取所有格式?是的:可以。这将允许您向数据库添加RTF解析器,并在SQL中将数据转换为纯文本 请注意,这方面的性能需要特别注意。如果您计划在选择中搜索大量GB的文本,一个更好的选择是解

我需要
选择
som数据,cols上的是
CLOB

我目前正在使用
到字符(DBMS\u LOB.SUBSTR(T.Tekst,4000,1))
,但这会输出clob、文本格式和全部,类似于以下内容:

{\rtf1\ansi\deff0\deftab254{\fonttbl{…
和文本faaar

有没有办法让我只获取文本,而不获取所有格式?

是的:可以。这将允许您向数据库添加RTF解析器,并在SQL中将数据转换为纯文本

请注意,这方面的性能需要特别注意。如果您计划在
选择中搜索大量GB的文本,一个更好的选择是解析填充
CLOB
的代码中的RTF数据,或者创建一个新表,其中包含您需要的数据以及保持这些数据最新的触发器。

是:可以。这将允许您向数据库添加RTF解析器,并将数据转换为SQL中的纯文本


请注意,这方面的性能需要特别注意。如果您计划在
选择中搜索数GB的文本,一个更好的选择是解析填充
CLOB
的代码中的RTF数据,或者创建一个新表,其中包含您需要的数据以及使其保持最新的触发器。

存储在CLOB列中?它似乎存储在DB中,带有格式和全部,TO_CHAR(DBMS_LOB.SUBSTR(T.Tekst,4000,1))在这种情况下执行正确的工作TO_CHAR(DBMS_LOB.SUBSTR(T.Tekst,4000,1))返回“{\rtf1\ansi\deff0\deftab 254{\fonttbl\f0\swiss\fcharset0;}{\f1\fnil\fcharset0 Arial;}{\f2\fnil\harset0新的次数…”:(@mcha DBMS_LOB.SUBSTR(T.Tekst,4000,1)返回了相同的结果:(因为这是存储在CLOB列中的内容,该列是如何填充的?如果您提供一个完整的示例,我们可以使用DBMS_LOB.INSTR来处理CLOB列中到底存储了什么内容?它似乎存储在DB中,并带有格式和所有字符TO_CHAR(DBMS_LOB.SUBSTR(T.Tekst,4000,1))在这种情况下正在做正确的工作。返回“{\rtf1\ansi\deff0\deftab 254{\fonttbl{\f0\swiss\fcharset0 Arial;}{\f1\fnil\fcharset0 Arial;}{\f2\fnil\fcharset0新的次数…”:(@mcha DBMS_LOB.SUBSTR T.Tekst,4000,1)返回相同的结果:(因为这是存储在CLOB列中的内容,所以该列是如何填充的?如果您提供完整的示例,我们也可以使用DBMS_LOB.INSTR