作者dontbirdme (披着狼皮的羊)
看板Database
标题[SQL ] DB2将多列资料转成一笔Column的做法...
时间Sat Mar 16 22:37:31 2019
(针对
SQL 语言的问题,用这个标题。请用 Ctrl+Y 砍掉这行)
资料库名称:DB2
资料库版本:未知
内容/问题描述:
小弟最近到新公司,才知道公司还有资料是存在DB2上
因为小弟只用过Oracle & MS-SQL
完全不懂DB2语法,对此感到很头痛
现在有个需求,是要将多行的资料并成一笔Column
EX. 原资料有三行如下:
DataTp
A
B
C
要将之合并成一笔 "A,B,C" 的字串
简单说就是类似 MS-SQL 的 for xml path 的功能
请问有办法在一个语法做到吗?请大家帮忙~ Q_Q
PS. 因为资料是存在第三方,透过web service 存取的
无法写成 procedure,所以不适用较复杂的语法....
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 58.114.8.9
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Database/M.1552747056.A.928.html
2F:→ olycats: 没用过DB2但有查到这两种方法,请问可行吗? 03/20 13:18
3F:→ prawinra: 查一下 SUM(DECODE(...)) GROUP BY ... 03/21 06:13
4F:推 joery: 楼上decode 好像就是DB2 pivot. 的用法,Rows 转columns , 03/21 19:07
5F:→ joery: 再组成一个栏位即可。 03/21 19:07
7F:→ joery: ips4DB2LUW/entry/pivoting_tables56?lang=en 03/21 19:07
9F:→ joery: ips4DB2LUW/entry/pivoting_tables56?lang=en 03/21 19:07
11F:→ joery: 网址被截断重贴 03/21 19:09
12F:→ dontbirdme: 感谢各位,我已经用递回处理好了 03/22 00:09
13F:→ dontbirdme: 再注,我觉得一楼的做法是最简单的。只是DB版本太旧, 03/22 00:10
14F:→ dontbirdme: 只好用递回 03/22 00:10