根据结果拆分变量 - SQL
Split up Variable depending on result - SQL
我有一个变量A2,可以是4个变量和Null。它们并不相互排斥。我的变量 A1 是部门名称。
A1:调度、运营、人力资源等。
A2:经理、TL、代理、4 和 NULL。
我现在只用一个简单的代码就得到了什么(实际代码中有更多变量):
SELECT
A1,
A2;
结果是:
A1 A2
Dispatch Manager
Dispatch TL
Dispatch Agent
Dispatch NULL
Operations NULL
HR Manager
HR Agent
HR NULL
所以,我得到的部门是重复的。
我想要的是通过以下两种方式之一删除重复项:
A1 Manager TL Agent NULL
Dispatch Manager TL Agent
Operations NULL
HR Manager Agent
或:
A1 A2
Dispatch Manager, TL, Agent
Operations NULL
HR Manager, Agent
有人知道如何得到这个吗?
谢谢,
Teradata 为此 XMLAGG:
select
A1,
trim(trailing ',' from (xmlagg(a2|| ',') (varchar(5000))))
from
yourtable
group by A1
我有一个变量A2,可以是4个变量和Null。它们并不相互排斥。我的变量 A1 是部门名称。
A1:调度、运营、人力资源等。 A2:经理、TL、代理、4 和 NULL。
我现在只用一个简单的代码就得到了什么(实际代码中有更多变量):
SELECT
A1,
A2;
结果是:
A1 A2
Dispatch Manager
Dispatch TL
Dispatch Agent
Dispatch NULL
Operations NULL
HR Manager
HR Agent
HR NULL
所以,我得到的部门是重复的。
我想要的是通过以下两种方式之一删除重复项:
A1 Manager TL Agent NULL
Dispatch Manager TL Agent
Operations NULL
HR Manager Agent
或:
A1 A2
Dispatch Manager, TL, Agent
Operations NULL
HR Manager, Agent
有人知道如何得到这个吗?
谢谢,
Teradata 为此 XMLAGG:
select
A1,
trim(trailing ',' from (xmlagg(a2|| ',') (varchar(5000))))
from
yourtable
group by A1