Oracle 字符串分割,并将内码转中文(简单实现),项目实战
导读
实际项目开发过程中,可能会遇到这种情况,A表中A1字段存储B表中的内码如(1,2,3),此时需要将A表中的A1字段转中文,为了方便理解,我们这里创建学生表和老师表,一个学生对应N个老师。
创建表
学生表
--学生表
CREATE TABLE S_STUDENT
(
S_ID NUMBER,
S_NAME VARCHAR2(50),
T_ID VARCHAR2(50)
)
--插入一条数据
INSERT INTO S_STUDENT VALUES (1,'陈彦斌','1,2,3')
老师表
--老师表
CREATE TABLE T_TEACHER(
T_ID NUMBER,
T_NAME VARCHAR2(50)
)
--插入三条数据
INSERT INTO T_TEACHER VALUES (1,'语文');
INSERT INTO T_TEACHER VALUES (2,'数学');
INSERT INTO T_TEACHER VALUES (3,'英语');
数据
学生数据集

老师数据集

目标结果集

最终SQL

SELECT S.S_ID,
S.S_NAME,
S.T_ID,
TO_CHAR((SELECT WM_CONCAT(T_NAME)
FROM T_TEACHER T
WHERE INSTR( ',' || S.T_ID || ',' , ',' || T.T_ID || ',' ) > 0)) T_ID_NAME
FROM S_STUDENT S --前期准备
--WM_CONCAT:函数将列转行,并用“,”分割开来
--INSTR:字符查找函数,返回索引位置,格式--> INSTR(源字符串,目标字符串)
结尾
如果对你有小小的帮助,记得帮忙点个推荐哟!~~
Oracle 字符串分割,并将内码转中文(简单实现),项目实战的更多相关文章
- 工作中用到的oracle字符串分割整理
oracle部分: 定义类型(用于字符串分割): create or replace TYPE "STR_SPLIT" IS TABLE OF VARCHAR2 (4000); 字 ...
- Oracle 字符串分割排序冒泡算法
例子: 一个字符串"11,15,13,17,12",以逗号分割,现在要排序成"11,12,13,15,17". 写了一个实现方法,记录下来以备后用: ----- ...
- Java字符串分割函数split源码分析
spilt方法作用 以所有匹配regex的子串为分隔符,将input划分为多个子串. 例如: The input "boo:and:foo", for example, yield ...
- Oracle字符串分割函数
今天在创建视图的时候,碰到一个问题,问题如下: 将字符格式为“XXX,YYY”分割出来,并且分割后作为两个字段放入视图中. 考虑使用字符分割函数,但是查找资料Oracle没有字符分割的函数(我对Ora ...
- oracle 字符串分割
); create or replace function strsplit2(p_value varchar2, p_split varchar2 := ',') return str_split ...
- oracle 字符串分割函数
首先创建一个类型: CREATE OR REPLACE TYPE str_split IS TABLE OF VARCHAR2 (4000); 创建函数: CREATE OR REPLACE FUNC ...
- Oracle字符串分割Split(超简单一条sql解决)
) FROM renyuan where name ='张三' 解决如下问题 我现在有一个字段是存:,,3的,而它对应另一张值集表中.eg; 课程人员表 renyuan id name Course ...
- 小兔博客新增源码下载模块,JavaWeb项目实战,JavaScript入门教程 ,JavaSE案例等
从今以后,所有的源码在 http://www.xiaotublog.com/downloadView.html 都可以免费下载,在下载页面还可以直接链接到相关的教程地址(如果有教程的话...). 最近 ...
- Oracle拆分字符串,字符串分割的函数。
第一种:oracle字符串分割和提取 分割 create or replace function Get_StrArrayLength ( av_str varchar2, --要分割的字符串 av_ ...
- Oracle 超长字符串分割劈分
Oracle 超长字符串分割劈分,具体能有多长没测过,反正很大.... 下面,,,,直奔主题了: CREATE OR REPLACE FUNCTION splitstr(p_string IN clo ...
随机推荐
- leaflet 根据一个经纬度及距离角度,算出另外一个经纬度
/** * 根据一个经纬度及距离角度,算出另外一个经纬度 * @param {*} lng 经度 113.3960698 * @param {*} lat 纬度 22.941386 * @param ...
- leaflet 使用kriging.js实现前端自定义插值
1.GitHub地址:https://github.com/oeo4b/kriging.js 2.核心代码 var variogram = kriging.train(t, x, y, model, ...
- GESP 202312 游记
day 0 把一本通上的指针扫了一遍,睡觉! day 1 9:00入场,在第二个考场. 冲进昌平二中,码了Hello,World!. 9:30发网址,开题 监考老师居然说阅读程序题可以打代码!···· ...
- kapt构建报错
报错信息: Caused by: org.gradle.internal.metaobject.AbstractDynamicObject$CustomMessageMissingMethodExce ...
- 使用 Splashtop 启用员工远程访问
使员工进行远程工作似乎是一项耗时.不安全且昂贵的任务.但是,借助 Splashtop,您可以快速.轻松.安全地使您的员工从任何位置以最高 价值远程访问其工作站. 如何使用 Splashtop 启用 ...
- IPv6 — 协议头
目录 文章目录 目录 前文列表 IPv6 协议头格式 扩展报头 前文列表 <IPv6 - 网际协议第 6 版> <IPv6 - 地址格式与寻址模式> IPv6 协议头格式 IP ...
- ETSI GS MEC 012,无线网络信息服务 API
目录 文章目录 目录 版本 功能理解 版本 ETSI GS MEC 012 V2.1.1 (2019-12) 功能理解 RNIS(Radio Network Information Service,无 ...
- .NET Aspire 正式发布:简化 .NET 云原生开发
.NET团队北京时间2024年5月22日已正式发布.NET Aspire ,在博客文章里做了详细的介绍:.NET Aspire 正式发布:简化 .NET 云原生开发 - .NET 博客 (micros ...
- linux下srpm源码包的使用和安装
目录 一.关于srpm包 二.srpm包和rpm包的区别 三.不对srpm包做修改,直接安装srpm包 四.对srpm包的源码进行修改,然后安装srpm包 一.关于srpm包 SRPM包是Sour ...
- SpringMVC在返回JSON数据时出现406错误解决方案
在SpringMVC框架的使用中常常会使用@ResponseBody注解,修饰"处理器"(Controller的方法),这样在处理器在返回完毕后,就不走逻辑视图,而是将返回的对象转 ...