Re: [HACKERS] We are not following the spec for HAVING without GROUP

Kevin HaleBoyes <khaleboyes@chartwelltechnology.com>

From: Kevin HaleBoyes <khaleboyes@chartwelltechnology.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: pgsql-hackers@postgresql.org, pgsql-bugs@postgresql.org
Date: 2005-03-10T18:21:14Z
Lists: pgsql-bugs, pgsql-hackers
Tom Lane wrote:
> Would those of you with access to other DBMSes try this:
> 
> create table tab (col integer);
> select 1 from tab having 1=0;
> select 1 from tab having 1=1;
> insert into tab values(1);
> insert into tab values(2);
> select 1 from tab having 1=0;
> select 1 from tab having 1=1;
> 
> I claim that a SQL-conformant database will return 0, 1, 0, and 1 rows
> from the 4 selects --- that is, the contents of tab make no difference
> at all.  (MySQL returns 0, 0, 0, and 2 rows, so they are definitely
> copying our mistake...)
> 
> 			regards, tom lane

 From SQL server 2000 with a service pack, I get:

zero rows from the first query (having 1=0);
one row, col value 1, from second query (having 1=1);
...run inserts...
zero rows from the third query (having 1=0);
one row, col value 1, from forth query (having 1=1);

K.