使用SUBSTR Oracle SQL将空间添加到CONCAT

时间:2018-08-20 07:35:26

标签: sql oracle concat substr

我试图将两列之间用空格隔开,第一列需要SUBSTR,而另一列则不需要。我已经写了这个查询:

SELECT CONCAT(SUBSTR(FIRST_NAME,1,1), ' ',LAST_NAME) AS NAME
FROM OEHR_EMPLOYEES;

但是,我尝试了许多在线搜索,并尝试了不同的方法使其正常工作,但我做不到。我收到许多错误。我想要得到的结果是例如如果原始数据是Ray Adams,那么结果将是R Adams。任何帮助将不胜感激。

3 个答案:

答案 0 :(得分:8)

使用串联运算符:

SELECT SUBSTR(FIRST_NAME,1,1)|| ' '||LAST_NAME AS NAME FROM OEHR_EMPLOYEES;

或嵌套的concat函数:

SELECT concat(CONCAT(SUBSTR(FIRST_NAME,1,1), ' '),LAST_NAME) AS NAME FROM OEHR_EMPLOYEES;

答案 1 :(得分:1)

CONCAT仅允许您将2个字符串连接在一起,不能更多。 您应该使用:

SELECT CONCAT(CONCAT(SUBSTR(FIRST_NAME,1,1), ' '),LAST_NAME) AS NAME FROM OEHR_EMPLOYEES;

答案 2 :(得分:0)

试试这个:

选择FIRST_NAME|| ' '||LAST_NAME AS FULL_NAME