字段值实例:ITEM_PATHNAME (a,b,c)select ID,REGEXP_SUBSTR(ITEM_PATHNAME, '[^,]+', 1, 1)AS item_firstTitle,REGEXP_SUBSTR(ITEM_PATHNAME, '[^,]+', 1, 2)AS item_secondTitle,REGEXP_SUBSTR(ITEM_PATHNAME, '[^...
近期在工作中遇到某表某
字段
是可扩展数据内容,信息以
逗号
分隔
生
成
的,现需求要根据此
字段
数据在其它表查询相关的内容展现出来,第一想法是切割数据,以
逗号
作为切割符,以下为总结的实现方法,以供大家参考、指教。
REGEXP_SUBSTR函数
这个函数的作用是正则
分隔
字符串,用法为
function REGEXP_SUBSTR(String, pattern, position, occurrence, modifier)
__srcstr :需要进行正则处理的字符串
__pattern :进行匹配的正则表达式
__position :起始位置,从第几个字符开始正则表达式匹配(默认为1)
__occurre
SELECT listagg (column_name, ',') WITHIN GROUP (ORDER BY column_name) names
FROM user_tab_columns
WHERE Table_Name='PPCM_SPECLIST_NEW'
工作中遇到一个问题,表A中有一个
字段
,存的是编码值,但是不规范,存的多个值,用
逗号
(既有英文
逗号
,又有中文
逗号
,还有空格)隔开了;现需要根据编码值关联对应的编码表查出编码名称,所以网上查找资料得出了解决方法。本人用的是
Oracle
数据库。
参考MySQL数据库解决方法:https://blog.csdn.net/myme95/article/details/82661661
一、创建测...
利用
ORACLE
的REGEXP_SUBSTR()进行处理就好了
SELECT
DISTINCT REGEXP_SUBSTR( '371,370,368,409,1', '[^,]+', 1, LEVEL ) VERI_ITEM
DUAL T CONNECT BY LEVEL <= LENGTH('371,370,368,409,1') - LENGTH( REPLACE ( '371,370,368,409,1', ',', ''
Oracle
逗号
分隔
是指在
Oracle
数据库中使用
逗号
对
字段
进行
分隔
的方法,常用于SELECT语句中的列名列表中,
逗号
用于将一列名与另一列名隔开,以便进行查询、排序、筛选、计算等操作。
逗号
分隔
还常用于INSERT语句中的值列表中,
逗号
用于将一组值与另一组值隔开,以便将数据插入数据库中的对应
字段
中。在开发
Oracle
应用程序时,
逗号
分隔
也可用于传递多个参数或条件值给
SQL语句
。
逗号
分隔
在
Oracle
中有时也被称为
逗号
运算符或列
分隔
符。使用
逗号
分隔
时,需要注意
逗号
前后的空格是否正确,以免引起语法错误或查询结果错误。在处理大量数据时,
逗号
分隔
的效率相对于其它
分隔
方式较高,但需注意数据的类型、长度、精度等问题。
Oracle
还提供了一些内置函数(如LISTAGG())可用于将多个数据行的某些列以
逗号
分隔
的形式拼接
成
一个字符串,以便于分析、展示和导出为CSV文件等。总之,
逗号
分隔
在
Oracle
数据库中应用广泛且十分重要,掌握正确使用
逗号
分隔
的技巧可以提高开发工作的效率和数据处理的准确性。