Re: Group By question
От | brian |
---|---|
Тема | Re: Group By question |
Дата | |
Msg-id | 4717DA83.8000001@zijn-digital.com обсуждение исходный текст |
Ответ на | Re: Group By question (Jeff Lanzarotta <delux256-postgresql@yahoo.com>) |
Список | pgsql-general |
Jeff Lanzarotta wrote: > > Sam Mason <sam@samason.me.uk> wrote: On Tue, Oct 16, 2007 at 07:46:34AM -0700, Jeff Lanzarotta wrote: > >>Hello, >> >>I have a table that looks something like this: >> >>SKU Dept Col1 Col2 Col3 >>------- ------ ------- ------- ------ >>1 1 1 2 3 >>2 1 2 3 4 >>3 2 1 0 1 >>4 2 0 1 2 >>5 2 4 1 3 >>6 3 1 2 3 >> >>I am having a problem trying to get the Is there a query that can do >>something like this: >> >>select sku, dept, (col1 + col2) * col3) from table group by dept > > > What are you expecting the group by to do here? It may be helpful if > you show what you expect the output to be. > > Okay, actually the query is something like: > > select dept, (col1 + col2) * col3) from table group by dept > > So, the output would look something like: > > Dept Total > ------ ------- > 1 26 > 2 18 > 3 9 > Please don't top-post. The problem may have been that you were selecting SKU (at least, in the first example). But, as you're aggregating the columns, this is impossible. SELECT Dept, SUM((Col1 + Col2) * col3) AS total FROM foo GROUP BY Dept ORDER BY Dept; dept | total ------+------- 1 | 29 2 | 18 3 | 9 (your example had an arithmetic error) brian
В списке pgsql-general по дате отправления: