| Author |
Topic |
|
HenryFulmer
Posting Yak Master
110 Posts |
Posted - 2011-10-03 : 13:11:57
|
I have two tables:[PRODUCTS]: with Columns ArtNum and ProdGroup[SALES_SUM]: with Columns ArtNum, SalesDate, SalesAmountI'd like to generate a query that sumarizes my sales by ProdGroup for the current month, the same month last year and the previous 12 months.SELECT p.ProdGroup, CASE WHEN DATENAME(MONTH,SalesDate)= DATENAME(MONTH,CURRENT_TIMESTAMP) AND DATENAME(YEAR,SalesDate)= DATENAME(YEAR,CURRENT_TIMESTAMP)THEN SUM(s.SalesAmount) ELSE NULL END as CurrentMonthSales...FROM PRODUCTS pINNER JOIN SALES_SUM s ON p.ArtNum = s.ArtNum I don't think I'm on the right path, can anyone point me into the correct direction? |
|
|
visakh16
Very Important crosS Applying yaK Herder
52326 Posts |
Posted - 2011-10-03 : 13:26:30
|
| [code]SELECT p.ProdGroup, SUM(CASE WHEN DATEPART(MONTH,SalesDate)= DATEPART(MONTH,CURRENT_TIMESTAMP) AND DATEPART(YEAR,SalesDate)= DATEPART(YEAR,CURRENT_TIMESTAMP)THEN s.SalesAmount ELSE NULL END) as CurrentMonthSales,SUM(CASE WHEN DATEPART(MONTH,SalesDate)= DATEPART(MONTH,CURRENT_TIMESTAMP) AND DATEPART(YEAR,SalesDate)= DATEPART(YEAR,CURRENT_TIMESTAMP)-1THEN s.SalesAmount ELSE NULL END) as LastYearSameMonthSales...FROM PRODUCTS pINNER JOIN SALES_SUM s ON p.ArtNum = s.ArtNumWHERE (SalesDate >=DATEADD(yy,DATEDIFF(yy,0,GETDATE()),0)AND SalesDate <DATEADD(yy,DATEDIFF(yy,0,GETDATE())+1,0))OR (SalesDate >=DATEADD(mm,DATEPART(mm,GETDATE())-1,DATEADD(yy,DATEDIFF(yy,0,GETDATE())-1,0))AND SalesDate <DATEADD(mm,DATEPART(mm,GETDATE()),DATEADD(yy,DATEDIFF(yy,0,GETDATE())-1,0)))GROUP BY p.ProdGroup[/code]------------------------------------------------------------------------------------------------------SQL Server MVPhttp://visakhm.blogspot.com/ |
 |
|
|
|
|
|