Re: Coalesce bug ?
От | Chris Angelico |
---|---|
Тема | Re: Coalesce bug ? |
Дата | |
Msg-id | CAPTjJmrmFX0_Z7mcLQP9LNurchvPkFwntNRvX4QMfXqVd0M-og@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Coalesce bug ? (Adrian Klaver <adrian.klaver@gmail.com>) |
Список | pgsql-general |
On Sat, Dec 22, 2012 at 9:31 AM, Adrian Klaver <adrian.klaver@gmail.com> wrote: > On 12/21/2012 02:22 PM, Chris Angelico wrote: >> As I understand it, there are three keywords: VOLATILE, STRICT, and >> IMMUTABLE. Putting one of those keywords into the declaration flags >> the function accordingly; if none is given, VOLATILE is assumed. >> >> Declaring the function as "STRICT IMMUTABLE" or "STRICT VOLATILE" >> seems at best redundant (the word "STRICT" is mere noise), and at >> worst confusing (the parser might be interpreting it as "STRICT", not >> as the other keyword). Or is there something I'm missing here? > > > Not sure I am following. > > IMMUTABLE/VOLATILE/STABLE deal with the query optimizer. > > CALLED ON NULL INPUT/STRICT deal with NULL input behavior. > > http://www.postgresql.org/docs/9.2/interactive/sql-createfunction.html OOPS! Error's mine, sorry everyone! I thought the keyword was STRICT, but it's actually STABLE that does that. Apologies to anyone who's been confused by my miswording in this thread! STRICT VOLATILE makes perfect sense; STABLE VOLATILE is what doesn't. ChrisA
В списке pgsql-general по дате отправления: