Thread: Query problem

Query problem

From
Naz Gassiep
Date:
Aside from the messy nomenclature, is anyone able to spot why
the "sum" column from the first query is not returning 7, as
the second query suggests that it should? I know that this is
probably simple, and that It's probably going to jump out at
me the minute I hit "Send", but if I don't hit send, then I'll
never see it hehe.


twerl=# SELECT 'contactgroups',
                 contactgroups.siteid,
                 contactgroups.id,
                 contactgroups.name,
                 contactgroups.description,
                 SUM(contacts.id),
                 contactgroups.trashed
            FROM contactgroups
 LEFT OUTER JOIN contacts ON (contactgroups.id = contacts.groupid)
           WHERE contactgroups.trashed IS NOT NULL
             AND contactgroups.deleted IS NULL
        GROUP BY contactgroups.siteid,
                 contactgroups.id,
                 contactgroups.name,
                 contactgroups.description,
                 contactgroups.trashed;
   ?column?    | siteid | id |        name        | description | sum |            trashed
---------------+--------+----+--------------------+-------------+-----+-------------------------------
 contactgroups |      1 |  3 | Telechoice / Optus |             | 594 | 2007-10-01 20:08:51.449825+10
(1 row)

twerl=# select count(*) from contacts where groupid = 3;
 count
-------
     7
(1 row)


Thanks,
- Naz.



Re: Query problem

From
"Albe Laurenz"
Date:
Naz Gassiep wrote:
> Aside from the messy nomenclature, is anyone able to spot why
> the "sum" column from the first query is not returning 7, as
> the second query suggests that it should? I know that this is
> probably simple, and that It's probably going to jump out at
> me the minute I hit "Send", but if I don't hit send, then I'll
> never see it hehe.
>
> twerl=# SELECT ... SUM(contacts.id) ... FROM ... contacts ...
> ... | sum | ...
> ...-+-----+-...
> ... | 594 | ...
> (1 row)
>
> twerl=# select count(*) from contacts where groupid = 3;
>  count
> -------
>      7
> (1 row)

That's an easy one.

I assume that there are three rows in table "contacts", and
the values of the "id" column are 42, 123 and 429 (or similar).

Yours,
Laurenz Albe