如何在Oracle中拆分逗号分隔的字符串[重复]

2023-12-07

如何在Oracle中使用分割逗号分隔的字符串SUBSTR and INSTR.

字符串 '20.4,12.5,3.5,0.2,0.2'.

我尝试使用下面的代码,但无法获取第二个逗号后的值。

SELECT substr('20.4,12.5,3.5,0.2,0.2',0,instr('20.4,12.5,3.5,0.2,0.2',',')-1) 
value FROM dual   -- 1. 20.4

对于第二个值,我在第二个逗号之后获取整个字符串。

SELECT substr('20.4,12.5,3.5,0.2,0.2',instr('20.4,12.5,3.5,0.2,0.2',',')+1,instr('20.4,
12.5,3.5,0.2,0.2',',',2,2)-1) st FROM dual   -- result : 12.5,3.5,

我想要每个逗号后面的值,例如

20.4

12.5

3.5等等。


基于https://blogs.oracle.com/aramamoo/how-to-split-comma-separated-string-and-pass-to-in-clause-of-select-statement :

首先,我们将形成一个查询,该查询分割这个逗号分隔的字符串,并将各个字符串作为行给出。

SQL> select regexp_substr('20.4,12.5,3.5,0.2,0.2','[^,]+', 1, level) from dual
     connect by regexp_substr('20.4,12.5,3.5,0.2,0.2', '[^,]+', 1, level) is not null;


REGEXP_SUBSTR('20.4,1
---------------------
20.4                 
12.5                 
3.5                  
0.2                  
0.2  

上面的查询迭代逗号分隔的字符串,搜索逗号 (,),然后通过将逗号视为分隔符来分割字符串。每当遇到分隔符时,它都会将字符串作为一行返回。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在Oracle中拆分逗号分隔的字符串[重复] 的相关文章

  • 如何防止 java.lang.NumberFormatException: 对于输入字符串:“N/A”?

    在运行我的代码时 我得到了NumberFormatException java lang NumberFormatException For input string N A at java lang NumberFormatExcepti
  • 增加具有重复组的组的行号

    我正在研究 PLSQL Oracle 12 的查询 其中我需要增加每个组的数据集的行号 我的问题与这个问题类似 增加组上的行号 https stackoverflow com questions 11116275 increment row
  • 表中允许的最大列数是多少?

    一个表中允许的最大列数是多少Oracle表 在以下版本中 甲骨文8i 甲骨文9i 甲骨文10g 甲骨文11g 甲骨文12c 每个表的列数限制为 1 000 列8i http www mbjconsulting com oracle link
  • Oracle 中四舍五入到特定有效数字位数

    oracle 是否有舍入函数可以四舍五入到特定数量的有效数字 例如 将 1278 舍入到 1300 四舍五入到两位有效数字 Try ROUND x d FLOOR LOG 10 x 1 where d是有效位数 x是要四舍五入的值 Exam
  • 将字符串 ascii 转换为字符串 Hex

    假设我有这个字符串 string str 1234 我需要一个函数将该字符串转换为该字符串 0x31 0x32 0x33 0x34 我在网上搜索了很多类似的东西 但没有找到这个问题的答案 string str 1234 char charV
  • !r 在 str() 和 repr() 中做什么?

    根据Python 2 7 12 文档 https docs python org 2 tutorial inputoutput html fancier output formatting s apply str and r apply r
  • PHP 正则表达式 [仅接受选定的字符]

    我想接受用户输入的字符列表并拒绝其余的 我可以接受格式化字 符串或查找是否缺少字符 字符串 但我如何才能只接受一组字符而拒绝所有其他字符 我想使用 preg match 来做到这一点 例如允许的字符有 a z A Z 用户必须能够以任何顺序
  • 字符串中最长的单词

    如何获得字符串中最长的单词 Eg string Where did the big Elephant go 回来 Elephant 循环遍历字符串中的单词 跟踪迄今为止最长的单词
  • 如何从 Oracle 中的日期中减去小时数,以便它也影响当天

    我正在尝试从 Oracle 中减去日期 这样它甚至也会影响这一天 例如 如果 时间戳是 01 June 2015 00 小时 如果我减去 2 小时 我希望能够转到 31 May 2014 22 小时 I tried to char sysd
  • 按“字符串”名称对 LINQ 进行排序

    问题解决了 解决方案是 Linq Dynamic 你这样做 from c in Context AccountCharts where c Account FK account c Year FK year select c OrderBy
  • 如何从数组C++中获取唯一的字符串

    我知道我的问题对某些人来说可能很愚蠢 但我整天用谷歌搜索并尝试制定自己的解决方案 但我失败了 请帮助 我需要从简单的字符串数组中打印所有唯一的字符串 example 输入 嗨 我的 名字 嗨 土豆 文本 名字 嗨 输出 我的 土豆 文本 我
  • C# - 从另一个字符串中删除第一次出现的子字符串的最简单方法

    我需要从另一个字符串中删除第一个 并且仅第一个 出现的字符串 这是替换字符串的示例 Iteration This ProjectName Iteration Release1 Iteration1 会变成这样 ProjectName Rel
  • 如何 UPSERT(更新或插入表?)

    UPSERT 操作更新或插入表中的行 具体取决于表是否已有与数据匹配的行 if table t has a row exists that has key X update t set mystuff where mykey X else
  • Perl 中的 Substr,将 utf8 字符切成两半

    我正在尝试解决使用时的问题substr在 Perl v5 8 5 中 这是一个示例字符串 UTF 8 示例 编辑 ff if length hit gt post title gt 60 hit gt post title substr h
  • Visual Basic 6.0 中的无效限定符错误

    在 Visual Basic 6 0 程序中 我有一个字符串 sTemp 我想确保它不包含引号 我有这行 If sTemp Contains Then 但是当我在 sTemp 之后输入句点时 我没有从智能感知中得到任何信息 并且当我尝试编译
  • Java ByteBuffer 到 String

    这是将 ByteBuffer 转换为 String 的正确方法吗 String k abcd ByteBuffer b ByteBuffer wrap k getBytes String v new String b array if k
  • Java 中的字符串拆分:可变长度的前向和后向

    我想使用数字作为分隔符来破坏 Java 中的字符串 但保留数字 一些研究表明 使用 String 中的 split method 是合适的 但我不明白如何做到这一点 为了进一步解释我的问题 我将使用一个例子 Input 20 55 50 0
  • 如何重构“字符串类型”代码?

    我目前正在开发一个代码库 其中有几类变量 例如数据库路径 它们简单地表示为字符串 这些 非 类型的大多数操作都在实用程序类中定义 我创建了一个新类来表示数据库 并将操作定义为实例方法 采用传统的 OOP 风格 然而 浏览大型代码库并重构它以
  • 在 SQL 中查找日期范围重叠的记录

    我有以下表格和数据 CREATE TABLE customer wer id customer NUMBER name VARCHAR2 10 surname VARCHAR2 20 date from DATE date to DATE
  • 当字符串太长时截断

    我有两个字符串 short string hello world long string this is a very long long long string suppose more than 10000 chars 我想改变默认行为

随机推荐

  • Sed 正则表达式更改文件

    我 未成功 尝试替换 Magento local xml 文件 连接字符串文件 中的数据库主机条目 该行如下
  • Python搜索目录,列出文件的基本名称,没有扩展名

    我想知道我是否可以修改我的代码以仅发布文件的基本名称 而不是包括扩展名的整个文件 我是 python 新手 所以我不太了解 而且我不知道不想修改某些东西并使其完全损坏 import glob import os os chdir C hea
  • 进程运行时不断打印子进程输出

    要从 Python 脚本启动程序 我使用以下方法 def execute command process subprocess Popen command shell True stdout subprocess PIPE stderr s
  • 在 Python 中将 SQLite 3 数据存储为变量

    我是否可以获取存储在 sqlite3 表中的数据并将其用作 Python 变量 我正在寻找可能类似于此伪代码的内容 import sqlite3 conn sqlite3 connect DATABASE cursor conn curso
  • 替换 pandas dataframe 列中的特定值,否则将列转换为数字

    给定以下 pandas 数据框 AgeAt X AgeAt Y AgeAt Z 0 Older than 100 Olde
  • React-router v6 私有路由不能正常工作

    我想用react router V6实现私有和公共路由 我已经尝试了StackOverflow上所有可用的解决方案 它似乎不起作用 这就是为什么我需要澄清 App tsx
  • 在汇编中实现正则表达式“[ab][^r]+r]”的匹配器

    我的汇编代码需要帮助 我需要使用编写代码来找到适合我的正则表达式的范围 我的正则表达式 ab r r 所以首先我寻找是否有 a 或 b 并跳转到 开始 部分 现在我有一个问题如何仅保存这封信的第一次出现 程序应显示 5 10 这意味着 匹配
  • 谷歌是否正在为本地主机生成新的 openid 声明标识符?

    我遇到了 google openid 标识符的问题 我在简单的 asp net mvc 项目中使用 dotnetopenauth 库 dotnetopenid 的后继者 在本地主机上的测试期间 我注意到谷歌有时会生成新的声明标识符 这是为什
  • 非阻塞同步 AJAX

    有没有办法执行同步 AJAX 查询而不冻结浏览器 在我看来 在大多数情况下 同步请求更容易使用 但它们阻止代码其他部分执行的事实才是真正的杀手 有没有一种方法可以实现同步 AJAX 而不会带来负面影响 是的 我意识到术语 同步 AJAX 是
  • 分享锚链接

    我想制作一个以这种形式共享链接的按钮 http example com anchor 但当我点击它时 它只共享 http example com 我怎样才能让它分享我想要的东西 这很简单 您想要共享的 URL 字符串应如下所示 http w
  • 使用 cellfun 将带参数的函数应用到单元格

    假设有一个字符元胞数组 希望将其转换为数字向量 这可以通过使用来完成str2num or str2double 例如 x 0 17106 2 11462 4 13938 6 24203 cellfun str2num x str2doubl
  • 如何比较 Excel 单元格中的文本以查看是否找到相同的单词?

    我有几行 Excel 单元格 其中包含一串单词 所有单词均以逗号分隔 我想将每个单元格与另一个单元格进行比较 以检查是否有任何单词匹配 重复 例如 单元格 A1 dog cat rabbit mouse lion bear tiger单元格
  • C 中多个数组的笛卡尔积

    我能够在 C 中实现静态数组数量的笛卡尔积 但是我想动态构建一个代码 获取输入数组的数量 有人可以阐明如何 仅使用数组 来做到这一点 如果不可能对于数组 请建议我其他解决方案 谢谢 下面是我的 3 个数组的笛卡尔积的代码 include
  • Magento 产品等级价格在产品图片更新时被删除

    我创建了一个脚本来以编程方式更新我的产品图片 但我的脚本删除了所有 tier prices product gt save 这是我的图像更新脚本 foreach productCollection as product formatted
  • 设置 ORACLE_HOME 的正确方法?

    在 OS X 上 我的 ORACLE HOME 环境变量应该是 usr local oracle or usr local oracle instantclient 10 2 它应该设置为包含您的 bin 目录的目录的值 在您的情况下 我认
  • 如何使用经典 ASP 保存画布图像?

    我有点卡在这里 我知道我可以使用 canvas toDataURL 生成一个 base64 编码的字符串 以传递到我的服务器上的经典 ASP 页面 但我似乎找不到答案的问题是如何处理这些数据 以便我可以将其保存在服务器上的某个位置 因此 通
  • 在谷歌地图叠加层中使用 d3 绘制路径

    我将 d3 js 与谷歌地图一起使用 徒劳地尝试可视化无线覆盖范围 基本思想是地图上的每个点都代表一个接入点 我将使用这些点的 voronoi 图作为覆盖范围等的粗略近似值 所以基于此demo 我有以下内容
  • javascript 事件不适用于使用 json 添加的动态内容

    我陷入了这样一种情况 我的 DOM 元素是基于动态生成的 getJSON该元素的 Javascript 函数不起作用 我将在我的代码中发布一些总体想法 因为我只是在寻找在这种情况下应该做什么的方向 site js包含一般功能 例如 docu
  • 单击按钮启动计时器

    我是 Android 编程新手 但我了解 Java 我的问题是 Android 中的计时器如何工作 我读过最好使用处理程序 我想做的是 您单击一个按钮 计时器就会启动 到单击按钮的那一刻 我一切都清楚了 但如何启动计时器 Android 中
  • 如何在Oracle中拆分逗号分隔的字符串[重复]

    这个问题在这里已经有答案了 如何在Oracle中使用分割逗号分隔的字符串SUBSTR and INSTR 字符串 20 4 12 5 3 5 0 2 0 2 我尝试使用下面的代码 但无法获取第二个逗号后的值 SELECT substr 20