July 17, 2011

SQL Server: Common mistake while Calculating Quarter Sales

When it comes to calculating quarter sales, I have always seen developers grouping only by quarter. For eg: Assuming we have a table called SalesTable with columns – SalesDate and Qty. To calculate the quantity sold per quarter, developers usually write the query as:

SQL Quarter Grouping

Now if the data is only for a year, the query would work. However this is seldom the case. In most of the reports I have seen,  end users want to see the quarters for 'each' year. So to do it correctly, you have to add the year too in the GroupBy clause, as shown below:

SQL Quarter Grouping

Now the query will differentiate each quarter by its year and produce correct results. It's a simple tip, but very easy to forget!

About The Author

Suprotim Agarwal, ASP.NET Architecture MVP works as an Architect Consultant and provides consultancy on how to design and develop Web applications.

Suprotim is also the founder and primary contributor to DevCurry, DotNetCurry and SQLServerCurry. He has also written an EBook 51 Recipes using jQuery with ASP.NET Controls.

Follow him on twitter @suprotimagarwal

No comments: