Re: Bug in how nulls are handled by plpgsql?
От | Stephan Szabo |
---|---|
Тема | Re: Bug in how nulls are handled by plpgsql? |
Дата | |
Msg-id | Pine.BSF.4.21.0011070846580.32142-100000@megazone23.bigpanda.com обсуждение исходный текст |
Ответ на | Bug in how nulls are handled by plpgsql? ("Jonathan Ellis" <jellis@advocast.com>) |
Список | pgsql-general |
Under 7.0.x and earlier there's only one flag to hold the isnull state of all parameters. If any are null all are null and I think there's a related output issue. Under current sources this is done the way you'd expect. As for the second question, not really that I can think of, but that behavior is correct per SQL. Stephan Szabo sszabo@bigpanda.com On Mon, 6 Nov 2000, Jonathan Ellis wrote: > bf2=# create function foo (varchar, varchar) returns varchar as ' > begin > return $1; > end; > ' language 'plpgsql'; > > bf2'# bf2'# bf2'# bf2'# CREATE > bf2=# bf2=# select foo('asdf', null) from dual; > foo > ----- > > (1 row) > > Even though the function foo never references the null, apparently postgres > thinks, "oh, a function call with a null in it. Must be null." and doesn't > even bother executing the function. Bug? > > On another null-related note, is there any way to make > select 'asdf' || null from dual > > return 'asdf' without changing it to > select 'asdf' || coalesce(null, '') from dual > > ? > > -Jonathan >
В списке pgsql-general по дате отправления: