【发布时间】:2017-11-29 17:46:06
【问题描述】:
让我们考虑下面的文本示例:
Lorem Ipsum 只是印刷和排版行业的虚拟文本。 Lorem Ipsum 一直是业界标准的虚拟文本 自 1500 年代以来,当一位不知名的印刷商采用了一种类型的厨房和 争先恐后地制作了一本类型样本书。它不仅活了下来 五个世纪,也是电子排版的飞跃, 基本保持不变。它在 1960 年代流行于 发布包含 Lorem Ipsum 段落的 Letraset 表,以及 最近使用 Aldus PageMaker 等桌面排版软件 包括 Lorem Ipsum 的版本。
如何在子字符串之前提取 10 个字符和在子字符串之后提取 10 个字符,比如说 Oracle 中上述段落中的“Lorem Ipsum”?数据类型是 clob。我一直在尝试使用 SUBSTR 等 Oracle 函数,但到目前为止还没有运气。感谢大家的帮助。
【问题讨论】:
-
所以你想要
industry. Lorem Ipsum has been在你的输出中? -
您需要它来处理给定字符串的每次出现,还是只处理第一次或第 n 次出现?如果给定字符串的出现没有前面/尾随字符会发生什么?
-
期望的输出是什么 - 两个新列(在输出中),一个显示前面的十个字符,另一个显示后面的十个字符?那么:如果 Lorem Ipsum 就在字符串的开头,则“之前的十个字符”显示 NULL?如果从字符串的开头到 Lorem Ipsum 正好有六个字符怎么办?那么:如果 Lorem Ipsum 在文本中出现多次怎么办?例如:字符串
'Lorem Ipsum wins. Lorem Ipsum.'的期望输出是什么?
标签: sql oracle oracle11g oracle-sqldeveloper oracle12c