Re: different results using count(x)

From: Raimon Fernandez <coder(at)montx(dot)com>
To: PostgreSQL List - Novice <pgsql-novice(at)postgresql(dot)org>
Subject: Re: different results using count(x)
Date: 2009-09-09 10:16:08
Message-ID: CB64D06A-20B4-4B23-8366-F1C7A46989A2@montx.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-novice


On 09/09/2009, at 8:34, Raimon Fernandez wrote:

> Hello,
>
>
> What's the difference between:
>
> SELECT count(id) FROM scanns WHERE tipus='esc'; => 11235
> SELECT count(pages) FROM scanns WHERE tipus='esc'; => 11165
> SELECT count(*) FROM scanns WHERE tipus='esc'; => 11235
>
> Why are some rows that aren't included in the count(pages) SELECT ?
>
> There are not NULL values in the pages field:
>
> SELECT count(pages) FROM scanns WHERE tipus='esc' AND pages IS NOT
> NULL; => 11165
> SELECT count(pages) FROM scanns WHERE tipus='esc' AND pages IS NULL;
> => 0
>
> And I think the three SELECTS should return the same rows number ...
>
>
> thanks for your help,
>
> r.

ok, I found the problem ...

this is wrong:

SELECT count(pages) FROM scanns WHERE tipus='esc' AND pages IS NULL;
=> 0

this is the correct:

SELECT count(*) FROM scanns WHERE tipus='esc' AND pages IS NULL; => 70

thanks,

raimon

In response to

Browse pgsql-novice by date

  From Date Subject
Next Message Doug Pisarek 2009-09-09 14:18:34 Using ora2pg Perl Script
Previous Message Raimon Fernandez 2009-09-09 06:34:20 different results using count(x)