Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 在oracle中将列转换为行_Sql_Oracle_Pivot - Fatal编程技术网

Sql 在oracle中将列转换为行

Sql 在oracle中将列转换为行,sql,oracle,pivot,Sql,Oracle,Pivot,我有如下表结构,需要如下所述的输出 表: A B CUSTOMER_TYPE_ID 4 CUSTOMER_TYPE_ID 3 CUSTOMER_TYPE_ID 2 CUSTOMER_TYPE_ID 1 CUSTOMER_TYPE_ID 0 答复: '4','3','2','1','0' 怎么做 如前所述,这不是轴心,而是聚合字符串连接。Oracle函数是LISTAGG(): 编辑: 如果要在值周围加单引号: select li

我有如下表结构,需要如下所述的输出

表:

A                   B
CUSTOMER_TYPE_ID    4
CUSTOMER_TYPE_ID    3
CUSTOMER_TYPE_ID    2
CUSTOMER_TYPE_ID    1
CUSTOMER_TYPE_ID    0
答复:

'4','3','2','1','0'

怎么做

如前所述,这不是轴心,而是聚合字符串连接。Oracle函数是
LISTAGG()

编辑:

如果要在值周围加单引号:

select listagg('''' || b || '''', ',') within group (order by b desc) as b
from t
group by a;

您使用的oracle版本是什么?11g,但这些值是动态的…但这将只返回一列,我不确定OP是什么meant@sagi顺便说一句,答案与作者的答案相同。我同意,答案是正确的@agent5566,但我需要的答案是“4”、“3”、“2”、“1”、“0”…?@rohansr002只需修改查询
…”。“”| | listagg(b),“,”)| |“…
Hey@agent5566,感谢它的工作,我已经更改了内部值,即内部查询表中的值。
select listagg('''' || b || '''', ',') within group (order by b desc) as b
from t
group by a;