oracle instr()的用法

umlzhang 2010-02-09 09:52:27
表一

列1
---------------------
1
2
3
4
有一个字符窜 “1,2,3,4”
如何遍历1,是字符串的子字符串
oralce 这样写为什么不出结果
select * from 表1 where instr("1,2,3,4" , cast(列1 as nvarchar2(20)))>0;
请高手指点 谢谢
...全文
86 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
wiki14 2010-02-09
  • 打赏
  • 举报
回复
SELECT INSTR('CORPORATE FLOOR', 'OR', -1, 1) "Instring" from DUAL

显示结果是:
Instring
——————
14
wiki14 2010-02-09
  • 打赏
  • 举报
回复
INSTR方法的格式为
INSTR(源字符串, 目标字符串, 起始位置, 匹配序号)
【源码免费下载链接】:https://renmaiwang.cn/s/iiq54 Oracle中的`instr`函数是一个非常实用的字符串处理函数,它用于在源字符串中查找目标字符串的位置。函数的基本语法如下:```sqlinstr(string1, string2 [, start_position [, nth_appearance ] ])```- `string1`:源字符串,这是我们要在其中进行搜索的字符串。- `string2`:目标字符串,我们要在`string1`中查找这个字符串。- `start_position`:可选参数,表示在`string1`中从哪个位置开始查找。默认值为1,表示从字符串的开头开始。如果设置为负数,则从字符串末尾开始反向查找。- `nth_appearance`:可选参数,指定要查找的目标字符串的第几次出现。默认值为1,表示查找第一次出现的位置。如果设置为负数,系统将返回错误。`instr`函数的工作方式是,它会返回目标字符串`string2`在源字符串`string1`中第一次出现的位置。如果未找到`string2`,则返回0。需要注意的是,字符串的索引是从1开始的。以下是一些使用`instr`函数的示例:1. 查找单个字符: ```sql SELECT instr(syranmo,s) FROM dual; -- 返回 1 ``` 在字符串syranmo中,字符s位于第一个位置。2. 查找连续的子串: ```sql SELECT instr(syranmo,ra) FROM dual; -- 返回 3 ``` 字符串ra在syranmo中首次出现的位置是第三个字符。3. 查找特定次数的出现: ```sql SELECT instr(syran mo,a,1,2) FROM dual; -- 返回 0 ``` 这里查找第二个a,但由

62,264

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧