也许我把括号写错了还是逗号错了?我知道这是一个相当新手的问题,因此我提前致歉。我最初有以下代码:
es3.last_name || ', ' ||SUBSTR(es3.first_name,1,1)
但是es3是左外部联接,因此所有空格都显示',',因此我在下面尝试了此操作并收到错误消息
ORA-00909:参数数量无效
NVL(es3.last_name, ' ' , es3.last_name || ', ' ||SUBSTR(es3.first_name,1,1))
谢谢!
最佳答案
从文档中:
Oracle / PLSQL中的NVL函数的语法为:NVL( string1, replace_with )
您正在向它提供3个参数,因此会出现错误消息。我相信您想要这样:
CASE WHEN es3.last_name IS NULL
THEN ''
ELSE es3.last_name || ', ' ||SUBSTR(es3.first_name,1,1)
END