选择Oracle中的两列并将其格式化为一列

时间:2016-05-16 15:57:28

标签: oracle oracle11g

我一直在搜索这个问题,我似乎无法找到它(我希望这不是重复的)

如何在Oracle中选择两列并将它们一起显示。现在我希望它们的格式如下:

select CONCAT(NAME, ' (', DESCRIPTION, ')') as display_value, ID as return_value 
  from TABLE_NAME
 order by 1

但是我得到的参数数量无效错误。这不是我的问题,我想知道是否有可能做我想做的事情。

这就是让它显示: 名称(描述)

2 个答案:

答案 0 :(得分:1)

也许你只需要这个:

select NAME || ' (' || DESCRIPTION || ')' as display_value

答案 1 :(得分:0)

concat只接受2个参数,你需要使用类似的东西:

select
    CONCAT(NAME, concat(' (', concat(DESCRIPTION, ')'))) as display_value,
    ID as return_value
from TABLE_NAME
order by 1

或其他语法:

select
    NAME || ' (' || DESCRIPTION || ')' as display_value,
    ID as return_value
from TABLE_NAME
order by 1