我有这样的查询:
SELECT id,
CASE
WHEN com_column IS NULL
THEN ''
ELSE SUBSTR(com_column,0,50) || '...'
END AS ss
From Table;
知道如何解决这个问题吗?
答案 0 :(得分:1)
您的语法似乎基本正确,如您所见
SELECT CASE WHEN 'abcd' IS NULL THEN NULL
ELSE SUBSTR('abcd',0,50) ||'...'
END AS ss
FROM DUAL;
您应该验证com_column是否在您的表中,以及它是否具有正确的数据类型(VARCHAR2
,CHAR
,VARCHAR
,...)。
无论如何,如果是NUMBER
数据类型,Oracle应该进行隐式转换。