Db2 函数中的Unpivot用法

Db2 函数中的Unpivot用法,db2,db2-400,Db2,Db2 400,有人能建议如何使用DB2函数吗 程序中的手段可以借助“侧向”关键字得到 但是功能上的需要 Select * from Emp; Emp_Id Emp_Name 1 John 2 Peter Expected Result: Element_Name Element_Value Emp_Id1 1 Emp_Id2 2 Emp_Name1 John Emp_Name2 Peter 我没有得到“如何进入DB2函数”的问题 WITH T(Em

有人能建议如何使用DB2函数吗

程序中的手段可以借助“侧向”关键字得到

但是功能上的需要

Select * from Emp;

Emp_Id Emp_Name
1      John
2      Peter


Expected Result:

Element_Name Element_Value
Emp_Id1      1
Emp_Id2      2
Emp_Name1    John
Emp_Name2    Peter
我没有得到“如何进入DB2函数”的问题

WITH T(Emp_Id, Emp_Name) AS 
(
VALUES
  (1, 'John')
, (2, 'Peter')
)
SELECT 
  'Emp_Id'||TRIM(CHAR(Emp_Id)) AS Element_Name 
, TRIM(CHAR(Emp_Id)) AS Element_Value
FROM T
  UNION ALL
SELECT 
  'Emp_Name'||TRIM(CHAR(Emp_Id)) AS Element_Name 
, Emp_Name AS Element_Value
FROM T;

|ELEMENT_NAME       |ELEMENT_VALUE|
|-------------------|-------------|
|Emp_Id1            |1            |
|Emp_Id2            |2            |
|Emp_Name1          |John         |
|Emp_Name2          |Peter        |