有没有办法将两种情况指向一个代码块?
Is there a way to direct two case to one block of code?
我想将两个案例重定向到一个代码块。在其他语言中,可以像下面的代码那样一个接一个地堆叠案例。但是 postgres 在这种情况下什么都不做。有没有办法做我想做的事?
VARIABLE_TYPE TEXT := 'BOOL'
CASE VARIABLE_TYPE
WHEN 'INTEGER' THEN
--a lot of code
WHEN 'BOOL' THEN
WHEN 'BOOLEAN' THEN
--a lot of code
END CASE;
您可以像这样使用 generic version of CASE
表达式:
VARIABLE_TYPE TEXT := 'BOOL'
CASE
WHEN VARIABLE_TYPE = 'INTEGER' THEN
--a lot of code
WHEN VARIABLE_TYPE = 'BOOL' OR
VARIABLE_TYPE = 'BOOLEAN' THEN
--a lot of code
END CASE;
我想将两个案例重定向到一个代码块。在其他语言中,可以像下面的代码那样一个接一个地堆叠案例。但是 postgres 在这种情况下什么都不做。有没有办法做我想做的事?
VARIABLE_TYPE TEXT := 'BOOL'
CASE VARIABLE_TYPE
WHEN 'INTEGER' THEN
--a lot of code
WHEN 'BOOL' THEN
WHEN 'BOOLEAN' THEN
--a lot of code
END CASE;
您可以像这样使用 generic version of CASE
表达式:
VARIABLE_TYPE TEXT := 'BOOL'
CASE
WHEN VARIABLE_TYPE = 'INTEGER' THEN
--a lot of code
WHEN VARIABLE_TYPE = 'BOOL' OR
VARIABLE_TYPE = 'BOOLEAN' THEN
--a lot of code
END CASE;