格式化查询结果

时间:2019-05-24 23:44:07

标签: oracle

假设我有一个查询返回column1,column2。我希望能够将结果格式化为Oracle中理想的输出。

我想弄乱字符串,这就是为什么我要问这个问题~~。

create table taTest(
column1 varchar(50),
column2 varchar(50)
)

这是我要格式化结果的基本查询:

select distinct(column1),column2 from taTest;

desired output(for each query result) : column1value(column2value)

我尝试过这样的事情:

select wm_concat(distinct(column1)||'('||column2||')') as result  from taTest;

但是似乎我没有正确使用wm_concat。

感谢您可能提供的任何输入。

1 个答案:

答案 0 :(得分:1)

distinct(column1), column2是我所见过的最大的谬论之一。因为这和

select distinct column1, column2. . .

因此,您只需要这个

select
    column1 || '('|| column2 || ')' as result
from
    taTest
group by
    column1, column2;

在这种情况下,group bydistinct执行相同的功能

回到distinct(column1)-这是错误的功能。 SQL解析的规则是( )中的所有内容都被视为一个单词\ group。因此,(column1)distinct使用()select distinct (column1), (column2) . . -- same thing 分开,而不是空白。您可以

{{1}}