> > select t1.a, count(*) from foo t1, foo t2 group by t1.a;
>
> Still, I must say that a row returning "0" in response to a
> count(*) isn't at all suprising, I guess it's a matter of
> whether or not the count(*) or the specific column being
> extracted determines the behavior.
>
The reason this should intuitively return no rows is the group by clause.
The group by is supposed to give 1 row per group. Since there is no
group, there should be no rows returned.
Andreas