Oracle sql子字符串以防万一不起作用

时间:2017-07-12 09:08:07

标签: database oracle

我有这样的查询:

SELECT id,
       CASE
         WHEN com_column IS NULL
           THEN ''
         ELSE SUBSTR(com_column,0,50) || '...' 
       END AS ss 
  From Table;

知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

您的语法似乎基本正确,如您所见

SELECT CASE WHEN 'abcd' IS NULL THEN NULL 
       ELSE SUBSTR('abcd',0,50) ||'...' 
       END AS ss 
  FROM DUAL;

您应该验证com_column是否在您的表中,以及它是否具有正确的数据类型(VARCHAR2CHARVARCHAR,...)。

无论如何,如果是NUMBER数据类型,Oracle应该进行隐式转换。