Re: Aggregate versus lineitem report - Mailing list pgsql-sql

From Bruno Wolff III
Subject Re: Aggregate versus lineitem report
Date
Msg-id 20051029172036.GB30316@wolff.to
Whole thread Raw
In response to Aggregate versus lineitem report  (Jerry Blumenthal <jerblum4@comcast.net>)
List pgsql-sql
On Fri, Oct 21, 2005 at 11:32:13 -0400, Jerry Blumenthal <jerblum4@comcast.net> wrote:
> How do you get a report that lists items and then produces a sum at the 
> end.  Like this:
> 
> name     date   amount1   amount2
> name     date   amount1   amount2
> name     date   amount1   amount2
> 
> totals             sum(amount1)   sum(amount2)
> 
> The sql command I am using now is
> 
>  SELECT SUM(Tcode.T_amount) Fees,
>         SUM(Tcharges.T_discount) Discount,
>         Tcode.T_prov Provider
>    FROM "C:\zz\Tcode.DAT" Tcode
>         INNER JOIN "C:\zz\Tcharges.DAT" Tcharges
>                 ON Tcode.T_acctnum = Tcharges.T_acctnum
>                AND Tcode.T_link = Tcharges.T_link
>   WHERE (((Tcode.T_posted BETWEEN "01/01/2004" AND "01/31/2004")
>     AND (Tcode.T_tcode < 30000)))
> GROUP BY Provider
> 
> And that shows a list of amounts, for each provider, but I want to be 
> able to show all the line items that added up to those totals.  (I didnt 
> include the group by provider issue in my question because that is nice 
> but not necessary- I can always just do one provider at a time with a 
> clause like "WHERE provider = 1")

Normally you would use two separate queries to do this. If you really need to
combine them for some reason you can use UNION ALL and some contortions to
make sure the two subselects have the same number of columns and that the
rows appear in the correct order.


pgsql-sql by date:

Previous
From: James Cloos
Date:
Subject: Two tables or three?
Next
From: Tom Lane
Date:
Subject: Re: Two tables or three?