当前位置: 首页 > news >正文

oracle使用CTE递归分解字符串

oracle使用CTE递归分解字符串

背景

给定一个不定长度字符串 并且以,分割例如 ‘1,2,3,4’ 使用sql查询 返回1,2,3,4四行 如果‘1,2’ 则返回 1,2 两行 使用sql实现

实现sql

WITH RECURSIVE split_strings AS (-- 初始查询,处理第一个值SELECT id,SUBSTRING_INDEX(column1, ',', 1) AS value,SUBSTRING(column1, LENGTH(SUBSTRING_INDEX(column1, ',', 1)) + 2) AS remainingFROM fs.my_tableWHERE column1 != ''UNION ALLSELECT s.id,SUBSTRING_INDEX(s.remaining, ',', 1) AS value,SUBSTRING(s.remaining, LENGTH(SUBSTRING_INDEX(s.remaining, ',', 1)) + 2) AS remainingFROM split_strings sWHERE s.remaining != ''
)
SELECT id, value
FROM split_strings
ORDER BY id, value;

http://www.lryc.cn/news/477679.html

相关文章:

  • 华为HarmonyOS借助AR引擎帮助应用实现虚拟与现实交互的能力5-识别平面语义
  • MAC 安装 brew及其常用命令
  • nVisual标签打印模块的部署与使用
  • python NLTK快速入门
  • 技术速递|.NET 9 中 System.Text.Json 的新增功能
  • LLM 使用 Elastic 实现可观察性:Azure OpenAI (二)
  • 数据库基础(2) . 安装MySQL
  • 高效自动化测试,引领汽车座舱新纪元——实车篇
  • GitHub中搜索项目方法
  • 浅谈串口服务器的作用
  • Spark 的Standalone集群环境安装与测试
  • 在Java中,实现数据库连接通常使用JDBC
  • Git 测验
  • L1G3000 提示工程(Prompt Engineering)
  • 【SQL50】day 1
  • jmeter脚本-请求体设置变量and请求体太长的处理
  • 基于java+SpringBoot+Vue的旅游管理系统设计与实现
  • SD3模型的部署(本地部署)
  • 讲解DFD和ERD
  • TVM计算图分割--LayerGroup
  • OPPO开源Diffusion多语言适配器—— MultilingualSD3-adapter 和 ChineseFLUX.1-adapter
  • Spring 设计模式之责任链模式
  • 简单的 docker 部署ELK
  • 四款主流的3D创作和游戏开发软件的核心特点和关系
  • 聚划算!Transformer-LSTM、Transformer、CNN-LSTM、LSTM、CNN五模型多变量回归预测
  • 信息安全工程师(76)网络安全应急响应技术原理与应用
  • 使用 OpenCV 实现图像的透视变换
  • openGauss数据库-头歌实验1-4 数据库及表的创建
  • 吉利极氪汽车嵌入式面试题及参考答案
  • pycharm中的服务是什么?