重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
oraclegroupby把不同的列用逗号合并步骤:
创新互联是一家专注于成都网站建设、成都做网站与策划设计,城厢网站建设哪家好?创新互联做网站,专注于网站建设十载,网设计领域的专业建站公司;建站业务涵盖:城厢等地区。城厢做网站价格咨询:18980820575
1、Oracle10G以前使用WMSYS.WM_CONCAT:wmsys.wm_concat将字段的值用","来隔开。
2、使用sys_connect_by_pathsys_connect_by_path(字段名,2个字段之间的连接符号),这里的连接符号不要使用逗号。
所有版本的oracle都可以使用wm_concat()函数 。例:select wm_concat(name) as name from user;
但如果是oracle11g,使用listagg() within group()函数 。例:select listagg(name, ‘,’) within group( order by name) as name from user;
使用wm_Concat:
使用ListAgg:
结果:
;hl=zh-CNnewwindow=1q=site%3Abuilder.com.cn+Oracle+%E5%85%B3%E4%BA%8E%E9%87%8D%E5%A4%8D%E5%88%97+%E5%92%8C+%E6%95%B0%E6%8D%AE%E5%90%88%E5%B9%B6+meta=
合并:把一个表中的数据合并到另一个表中去,如果数据在原表中存在做UPDATE, ... 消除重复行后会按字段的特性,做升序排列。
;hl=zh-CNnewwindow=1q=site%3Abuilder.com.cn+Oracle+%E5%85%B3%E4%BA%8E%E9%87%8D%E5%A4%8D%E5%88%97+%E5%92%8C+%E6%95%B0%E6%8D%AE%E5%90%88%E5%B9%B6+meta=
单纯的select a||b肯定是错的,你得有个相同的字段才能进行合并啊
所以你得把两个表做个子查询加上一个行号,然后用两个行号做关联才行