Moudiz
Moudiz

Reputation: 7377

case statement inside If statement

NOT EXPERIENCED with case statement , so any one can help me with that?

SELECT NAME ,
CASE ID ,
WHEN 1 THEN 'NAME EXISTS'
FROM EXAMPLE 
END;

This simple case condition works, but I need to add an if condition like the below:

SELECT X.NAME, E.TYPE ,
CASE X.ID ,
WHEN 1 THEN IF E.TYPE='BIG' THEN 'NAME EXISTS'
WHEN 2 THEN IF E.TYPE='SMALL' THEN 'NAME EXISTS'
WHEN 3 THEN IF E.TYPE='MEDIUM' THEN 'NAME EXISTS'
WHEN 4 THEN IF E.TYPE='MEDIUM' AND NAME='STACK' THEN 'NAME EXISTS'
ELSE 'IT DOESNT EXISTS'
FROM EXAMPLE X , EXTERNAL E

END;

Upvotes: 0

Views: 507

Answers (1)

juergen d
juergen d

Reputation: 204756

 SELECT
   X.NAME, 
   E.TYPE,
   CASE WHEN X.ID = 1 AND E.TYPE = 'BIG' THEN 'NAME EXISTS'
        WHEN X.ID = 2 AND E.TYPE = 'SMALL' THEN 'NAME EXISTS'
        WHEN X.ID = 3 AND E.TYPE = 'MEDIUM' THEN 'NAME EXISTS'
        WHEN X.ID = 4 AND E.TYPE = 'MEDIUM' AND NAME = 'STACK' THEN 'NAME EXISTS'
        ELSE 'IT DOESNT EXISTS'
    END

Upvotes: 2

Related Questions