如何撰写案例陈述

时间:2016-11-29 15:12:18

标签: sql netezza

我的Netezza有两张桌子(ABC,CDE)。我需要编写以下case语句列表来显示值。

表和列:

表名ABC:
列:(Id(PK),Desc)

表名CDE:
列:(值(如1,2,3),ID(FK))

select case when value Is Not Null then 'CALIFORNIA' else ID end 
from CDE

NZ显示pg atoi(我认为它无法将ID转换为varchar)

如何使用NZ编写CASE?

2 个答案:

答案 0 :(得分:0)

SELECT 
    CASE 
        WHEN value IS NOT NULL THEN 'CALIFORNIA'
        ELSE TO_CHAR(ID)
    END 
FROM CDE;

答案 1 :(得分:0)

这样做:

CAST(Id AS VARCHAR(50))

|      Function         |  Return Type  |       Description          |
======================================================================
| to_char(int, text)    |     text      | converts integer to string |

试试这个:

SELECT 
    CASE 
        WHEN value IS NOT NULL THEN 'CALIFORNIA'
        ELSE to_char(ID, text)
    END 
FROM CDE;