oracle列合并的实现方法
2023-06-13 09:15:39 时间
很多场合我们都会用到oracle的列合并,oracle提供了如下一些方法用来实现列合并:
一、Oracle10G以前使用WMSYS.WM_CONCAT:
wmsys.wm_concat将字段的值用","来隔开。
selectid,wm_concat(name)fromtab_namegroupbyid;
二、使用sys_connect_by_path
sys_connect_by_path(字段名,2个字段之间的连接符号),这里的连接符号不要使用逗号,oracle会报错,如果一定要用,可以使用replace替换一下,方法如下REPLACE(字段名,原字符,",")。这个函数使用之前必须先建立一个树,否则无用。
三、Oracle11G以后可以使用listagg
selectlistagg(id,",")withingroup(orderbyid)col_namefromtab_name;
四、使用自定义函数:
createorreplacefunctiongetRow(table1varchar2,ptdb1varchar2)RETURNVARCHAR2is ResultVARCHAR2(1000); begin FORcurIN(SELECTaudit_codeFROMsys_audit_columnt2WHEREtable1= t2.table_nameandptdb1=t2.ptdb_name)LOOP RESULT:=RESULT||cur.audit_code||","; ENDLOOP; RESULT:=rtrim(RESULT,","); return(Result); endgetRow;
相关文章
- Oracle 日志同步实现方案(oracle日志同步)
- 游标妙用Oracle隐式游标实现数据处理(oracle游标隐式)
- Oracle 嵌套游标的威力:实现复杂查询(oracle嵌套游标)
- Oracle转Java实现跨平台开发的奇妙之旅(oracle转java)
- 获取Oracle 11g认证的好处(oracle11g证书)
- 深入理解 Oracle 触发器的类型及其应用(oracle触发器类型)
- Oracle服务器每日日志监控及分析(oracle服务日志)
- 实现Oracle数据库拼接功能(oracle拼接)
- 深入探究Oracle RAC监听的作用与配置方法(oraclerac监听)
- Oracle获取每月天数的实现方式(oracle获取月份天数)
- 提升Oracle索引效率的有效方法(oracle索引是否有效)
- Oracle数据库中利用触发器实现数据保护(oracle的触发器建立)
- 掌握Oracle Q操作,保证数据安全(oracle q 操作)
- Oracle内连接理解并善用关键字(oracle内连接关键字)
- Oracle内存表的释放方法研究(oracle内存表释放)
- Oracle解决00907意外错误(oracle-00907)
- Oracle定义默认时间让时间不等待(oracle写默认时间)
- Feora成就Oracle的神奇之路(feora oracle)
- 值Oracle中取空值的解决方案(oracle为空取)
- Oracle行锁为什么是必要的(oracle为什么行锁)
- Oracle中优化链表结构的实现(oracle中链表结构)
- Oracle中判定哪个日期大的方法(oracle中那个日期大)
- Oracle中高效建立视图的方法(oracle中视图的建立)
- 获得Oracle产品认证拓展职业空间(oracle产品认证证书)
- 表名在Oracle中查看大写表名的方法(oracle中查看大写)
- 唯有Byte Oracle有助于提升业绩(byte oracle)
- Oracle数据库调整模式名的实现方式(oracle修改模式名)
- Oracle中如何取得一条数据(oracle中取一条数据)
- 与Oracle中的FOR语句实现数据删除(oracle中for删除)
- 采用Oracle技术,实现传统互联网的创新(oracle与传统互联网)
- Oracle SET指令实现变量显示(oracle set显示)
- Oracle中GET函数实现快速获取数据(oracle get函数)