【PostgreSQL】PostgreSQL实现Oracle的decode函数功能
PostgreSQL没有直接等价于Oracle的DECODE
函数,但可以使用CASE
表达式或者COALESCE
函数来实现类似的功能。
以下是使用CASE
表达式的示例:
SELECT
CASE
WHEN column_name = 'value1' THEN 'Result1'
WHEN column_name = 'value2' THEN 'Result2'
ELSE 'DefaultResult'
END
FROM
table_name;
使用COALESCE
函数可以将多个表达式按顺序评估,并返回第一个非NULL的结果,类似于Oracle中的DECODE
,但需要结合CASE
表达式使用:
SELECT
COALESCE(
CASE WHEN column_name = 'value1' THEN 'Result1' END,
CASE WHEN column_name = 'value2' THEN 'Result2' END,
'DefaultResult'
)
FROM
table_name;
这样就可以实现类似Oracle中DECODE
函数的功能。
评论已关闭