CASE search-expression
WHEN expression [, expression [ ... ]] THEN
statements
[ WHEN expression [, expression [ ... ]] THEN
statements
... ]
[ ELSE
statements ]
END CASE;
检索案例:
CASE
WHEN boolean-expression THEN
statements
[ WHEN boolean-expression THEN
statements
... ]
[ ELSE
statements ]
END CASE;
4条答案
按热度按时间oyxsuwqo1#
有一个等价的语句,叫做
CASE
语句。CASE有两种形式:
简单情况:
检索案例:
CASE
语句更易于阅读;比起Oracle中的decode()
,我更喜欢这些。izkcnapc2#
您可以将NULLIF与COALESCE结合使用:
从表格中选择合并(NULL(值,0),新值);
字体:Coalesce for zero instead of null
krcsximq3#
如果您习惯使用Oracle特定的函数,则可能需要安装PostgreSQL扩展
orafce
。在其他Oracle特定函数中,
orafce
还实现了DECODE
-您正在寻找的函数。如果您运行的是Ubuntu,您只需要安装
postgresql-9.1-orafce
包就可以在PostgreSQL服务器上使用orafce
。b0zn9rqh4#
除了主要答案外,如果在select中使用了case表达式,“END CASE”不适用,只需使用“END”即可。
甲骨文:
邮政: