Express??es NULLIF e CASE

S??o utilizadas as express??es CASE e NULLIF para as express??es condicionais no Derby.

Sintaxe da express??o NULLIF
NULLIF(L,R)
A express??o NULLIF ?? muito semelhante ?? express??o CASE. Por exemplo:
NULLIF(V1,V2)
equivale ?? seguinte express??o CASE:
CASE WHEN V1=V2 THEN NULL ELSE V1 END

Sintaxe da express??o CASE

A express??o CASE pode ser colocada em qualquer lugar onde ?? permitida uma express??o. Escolhe a express??o a ser avaliada baseado em um teste booleano.

CASE WHEN Express??oBooleana THEN Express??oThen ELSE Express??oElse END

A Express??oThen e a Express??oElse s??o express??es que devem possuir tipos compat??veis. Para os tipos nativos, isto significa que estes tipos devem ser o mesmo, ou deve haver uma convers??o nativa de alargamento entre os tipos.

N??o ?? necess??rio utilizar a express??o CASE para evitar NullPointerExceptions quando uma coluna que pode ter nulo se torna receptora do m??todo.
-- retorna 3
VALUES CASE WHEN 1=1 THEN 3 ELSE 4 END;
Se o valor da inst??ncia especificada na chamada do m??todo de inst??ncia for nulo, o resultado da chamada ser?? nulo (SQL NULL). Entretanto, ainda ?? necess??rio utilizar a express??o CASE para uma coluna que pode ter nulo, quando a coluna for o par??metro de um m??todo primitivo.