有没有办法将两个案例指向一个代码块?

问题描述 投票:0回答:1

我想要将两种情况重定向到一个代码块。在其他语言中,可以一个接一个地堆叠下面的代码中的情况。但是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;
postgresql conditional case
1个回答
2
投票

你可以使用generic version这样的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;
© www.soinside.com 2019 - 2024. All rights reserved.