您可以使用 Oracle 中的 SUBSTR 和 INSTR 函数来实现将表格中某个字段按逗号拆分的数据转为行数据。以下是一个示例查询:

SELECT
  SUBSTR('column_name', INSTR('column_name', ',', 1, level) + 1,
         INSTR('column_name', ',', 1, level + 1) - INSTR('column_name', ',', 1, level) - 1) AS split_data
FROM
  'table_name'
CONNECT BY
  level <= LENGTH('column_name') - LENGTH(REPLACE('column_name', ',', '')) + 1;

其中,'column_name'是要拆分的字段名,'table_name'是要查询的表名。

这个查询通过 CONNECT BY 子句和 LEVEL 伪列来逐级拆分字段中的数据,使用 SUBSTR 函数和 INSTR 函数来定位和提取每个子字符串。最后,将拆分后的数据作为结果集返回。

请将上述示例中的 'column_name' 和 'table_name' 替换为您实际使用的字段和表名。

Oracle 将表格中逗号分隔的数据转换为行数据

原文地址: https://www.cveoy.top/t/topic/mx6o 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录