X-Original-To: pgsql-sql@postgresql.org Received: from fzkmail2.fzk.de (fzkmail2.fzk.de [141.52.27.52]) by postgresql.org (Postfix) with SMTP id 62BB7474E44 for ; Fri, 7 Mar 2003 09:51:13 -0500 (EST) Received: FROM resy5.fzk.de BY fzkmail2.fzk.de ; Fri Mar 07 15:51:16 2003 +0100 Received: œby rodos.fzk.de with ESMTP (8.8.6 (PHNE_17135)/8.7.1) id PAA22801; Fri, 7 Mar 2003 15:51:15 +0100 (MET) Message-ID: <3E68B1E3.7DDEB3E4@rodos.fzk.de> Date: Fri, 07 Mar 2003 15:51:15 +0100 From: Christoph Haller X-Mailer: Mozilla 4.77 [en] (X11; U; HP-UX B.10.20 9000/780) X-Accept-Language: en MIME-Version: 1.0 To: pgsql-sql@postgresql.org Cc: mat@mat.cc Subject: Re: problem with subselect Content-Type: text/plain; charset=iso-8859-2 Content-Transfer-Encoding: 7bit X-Archive-Number: 200303/194 X-Sequence-Number: 12234 > |> SELECT date_trunc('month', f.date_creation) as mois, > |> sum(f.montant_ttc / d.taux) as facture, > |> (SELECT sum(f2.montant_ttc / d2.taux) as facture2 > |> FROM facture AS f2 JOIN devise AS d2 USING (id_devise) > |> WHERE date_trunc('month', f2.date_creation) > |> <=3D date_trunc('month', f.date_creation)) > |> FROM facture AS f JOIN devise AS d USING (id_devise) > |> GROUP BY date_trunc('month', f.date_creation) > |>=20 > |> which does not work... telling me that > |>=20 > |> "Sub-SELECT uses un-GROUPed attribute f.date_creation from outer > | query" > |> Which is not really true, but some way is... > |>=20 > |> What I want is to get the sum of the month, and the sum of the month > | and > |> the previous. > |>=20 > |> If someone has a clue, something, anything... :) > |>=20 > | Try > | ... GROUP BY mois ; > > Already tried, not working either. > I should have had a closer look: The WHERE clause is causing the error. I can't see any quick solution, but what often helped me is First try to word the query as a view and do the GROUPing then on the view. Regards, Christoph