Re: plpgsql: Is ELSE IF supported or not?
От | Pavel Stehule |
---|---|
Тема | Re: plpgsql: Is ELSE IF supported or not? |
Дата | |
Msg-id | 162867790806260432o74515e8fwfc8958adccfce6e2@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: plpgsql: Is ELSE IF supported or not? ("Marko Kreen" <markokr@gmail.com>) |
Ответы |
Re: plpgsql: Is ELSE IF supported or not?
|
Список | pgsql-hackers |
2008/6/26 Marko Kreen <markokr@gmail.com>: > On 6/26/08, Pavel Stehule <pavel.stehule@gmail.com> wrote: >> 2008/6/26 Marko Kreen <markokr@gmail.com>: >> > Docs seems to say it is, but following function fails to compile: >> > >> > create function err_else() returns void as $$ >> > begin >> > if 1 = 1 then >> > else if 1 = 2 then >> > end if; >> > end; >> > $$ language plpgsql; >> > >> > ERROR: syntax error at or near ";" >> > LINE 6: end; >> >> use elseif or elsif :) > > Yeah, I know. Just the docs say this is one "form" of the IF statement: > > IF ... THEN ... ELSE IF > > Although now that i read it more, the actual "form" is: > > ELSE > IF THEN > END IF > END IF; > > That is - the ELSE starts new block unconditionally and ignores any IF > that follows. Later the IF can be part of new block as usual. Huh. > > This is confusing. I suggest removing the "ELSE IF" as one of the "forms" > because it is not. > this is same in all procedural languages Pavel > -- > marko >
В списке pgsql-hackers по дате отправления: