有两个函数wmsys.wm_concat和listagg 1,SELECT wmsys.wm_concat(CATALOG_NAME) FROM "DATASHARE"."RES_CATALOG_CLASSIFY" WHERE PARENT_ID = '2'; 2, SELECT LISTAGG(CATALOG_NAME,',') WITHIN GROUP(ORDER BY CATALOG_NAME) FROM RES_CATALOG_CLASSIFY WHERE
在11G以下版本中oracle有自带的函数wm_concat可以实现,如: select wm_concat(id) from table where col='1' 但是在12C版本中此函数无法使用,但可以使用另一种方式实现,如: select xmlagg(xmlparse(content upper(id)||',' wellformed) order by id).getclobval() from table where col='1' 该函数返回结果为一个Blob类型的大字段,且因为
Mysql 的 GROUP_CONCAT 函数默认将查询的结果用逗号拼接并返回一个字符串,如:李四,long,张三 1. 常用方式 select GROUP_CONCAT(user_name) userName from user where type = 1 2. GROUP_CONCAT 结合 IN 的使用 -- 查询指定id对应的name值,返回结果为 name7,name4,name2,name5 order by field(org_id,0,7,4,2,5)表示按照给定字段的顺
Oracle把逗号分割的字符串转换为可放入in的条件语句的字符数列 前台传来的字符串:'589,321' SELECT*FROM TAB_A T1 WHERE T1.CODE IN ( SELECT REGEXP_SUBSTR('589,321','[^,]+', 1, LEVEL) FROM DUAL CONNECT BY REGEXP_SUBSTR('SMITH,ALLEN,WARD,JONES', '[^,]+', 1, LEVEL) IS NOT NULL )
--Oracle12c不再支持该函数,需要手动处理 --管理员登录授权给用户权限 GRANT CREATE SYNONYM TO c##sdic; / --创建 TYPE CREATE OR REPLACE TYPE WM_CONCAT_IMPL AS OBJECT ( CURR_STR ), STATIC FUNCTION ODCIAGGREGATEINITIALIZE(SCTX IN OUT WM_CONCAT_IMPL) RETURN NUMBER, MEMBER FUNCTION ODC
常用的字符串聚合(拼接)函数介绍 1.WMSYS.WM_CONCAT 从oracle 10G开始支持,使用案例如下: select deptno,wmsys.wm_concat(ename) from emp group by deptno; 若想将字符之间的分隔符换成其他标点,可添加一个replace函数 select deptno,replace(wmsys.wm_concat(ename),',','.') from emp group by deptno; 2.LISTAGG
项目中要将查询出的一列的多行内容拼接成一行,如下图:ypmc列. ms sql server: 网上查到相关资料如下:http://blog.csdn.net/rolamao/article/details/7745972 写的还不错. 我写的如下(存储过程中): select (STUFF((select '';''+ywmc from JB_TNB_HZ_YYQK where XT_JLZT =''0'' and SFLSH=a.lsh for xml path('''')),1,1,'''
最近在学习的过程中,发现一个挺有意思的函数,它可实现对列值的拼接.下面我们来看看其具体用法. 用法: 对其作用,官方文档的解释如下: For a specified measure, LISTAGG orders data within each group specified in the ORDER BY clause and then concatenates the values of the measure column. 即在每个分组内,LISTAGG根据order by子句对列植进
MSSQL中可以用STUFF函数拼接成字符串. 如: SELECT FieldSomeElse, ( SELECT STUFF(( SELECT ',' + LinkField FROM Detail WHERE Id = Main.Id FOR XML PATH('') ), , , '') ) AS LinkFieldString FROM Main