CONCAT in Oracle SQL Developer



我不知道是该用逗号(,)还是"||"作为CONCAT函数中的分隔符。

SELECT CONCAT(first_name, last_name) as name
FROM TABLE1

但是,下面这些都不正确(我需要在first_name和last_name之间放一个空格,或者从last_name中提取首字母并将该字母用括号括起来):

SELECT CONCAT(first_name || last_name) as name
FROM TABLE1
SELECT CONCAT(first_name || ' ' || last_name) as name 
FROM TABLE1
SELECT CONCAT(first_name, ' ', last_name) as name 
FROM TABLE1
SELECT CONCAT(first_name, '(', UPPER(STR(last_name, 1,1)), ')') as name 
FROM TABLE1

在Oracle SQL中使用双管道(||)代替CONCAT是一种更有效的方法。感谢大家在这里提供的评论。

SELECT (first_name || ' ' || last_name)as name
FROM Table1;

输出:

John Smith

我还修复了上面问题中的最后一个脚本。在&;as name&;前需要两个右括号

SELECT first_name || '(' || UPPER(SUBSTR(last_name, 1,1)) || ')')) as name, first_name, last_name 
FROM TABLE1

输出:

John(S) John Smith

最新更新