Search Postgresql Archives

Re: CASE Statement - Order of expression processing

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On Mon, Jun 17, 2013 at 11:11 PM, Stefan Drees <stefan@xxxxxxxxxx> wrote:

pg924=#  SELECT CASE WHEN 1 != 1 THEN 1/0 ELSE ((SELECT 1)=1)::integer END;
 case
------
    1
(1 row)

here the 1/0 is happily ignored.


It gets even stranger:

template1=# SELECT CASE WHEN (SELECT 0)=0 THEN 0 ELSE 1/(select 0) END;
 case 
------
    0
(1 row)

Here it seems that the ELSE does not get evaluated (which is correct).

Bye

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux