Solved

# Subqueries with Aggregates and Constants

Posted on 2009-05-19
311 Views
Problem:  Need to transform data from horizontal to vertical.  IE

Part           Date           Defect1     Defect2
123         5/1/2009           5               6

To

Part           Date            Defect       DefectTotal
123         5/1/2009       Defect1             5
123         5/1/2009       Defect2             6

I am pretty sure this needs to be done with a sub query and I am not sure how to create it.

I have attached a snip of code.  Can you tell me where to enter the subquery to Keep updated the Fields Defect and DefectTotal?

Thanks
Select 'ColdSpots' As Defect,Sum(ColdSpot) as DefectTotal,

From SCRAP

Where Dt between '5/1/2009' and '5/20/2009'
0
Question by:Jlucht
• 3
• 2

LVL 60

Expert Comment

ID: 24422634
how many columns total do you have?  ie Defect1, Defect2, etc.
0

LVL 3

Author Comment

ID: 24422694
15 defects in total
0

LVL 60

Accepted Solution

chapmandew earned 500 total points
ID: 24422778
easy way to do it in 2000 (2005 would be different)
declare @date1 datetime, @date2 datetime
select @date1 = '5/1/2009', @date2 = '5/20/2009'

select part, date, defect = 'Defect1' , defecttotal = Defect1
From SCRAP
Where Dt between @date1 and @date2
UNION ALL
select part, date, defect = 'Defect2' , defecttotal = Defect2
From SCRAP
Where Dt between @date1 and @date2

....et.al.
0

LVL 3

Author Comment

ID: 24424446
That is the code that I need to do what I need.  One more question.  How would I insert that record set into a table.

Below is the code that I used to do it.  I had to change a couple of things.

Thanks ALOT!!!

Joe

declare @date1 datetime, @date2 datetime

select @date1 = '5/1/2009', @date2 = '5/20/2009'

select Distinct partnum, defect = 'Holes' , defecttotal = Sum(Hole)

From SCRAP

Where Dt between @date1 and @date2

Group By Scrap.PartNum

UNION ALL

select Distinct partNum, defect = 'ColdSpot' , defecttotal = Sum(ColdSpot)

From SCRAP

Where Dt between @date1 and @date2

Group By Scrap.PartNum
0

LVL 3

Author Closing Comment

ID: 31583029
Thanks for everything
0

## Featured Post

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Hi, I am very much excited today since I'm going to share something very exciting Tool used for Analytical Reporting and that's nothing but MICROSTRATEGY. Actually there are lot of other tools available in the market for Reporting Such as Co…
Jaspersoft Studio is a plugin for Eclipse that lets you create reports from a datasource.  In this article, we'll go over creating a report from a default template and setting up a datasource that connects to your database.
Via a live example, show how to extract insert data into a SQL Server database table using the Import/Export option and Bulk Insert.
Viewers will learn how to use the SELECT statement in SQL to return specific rows and columns, with various degrees of sorting and limits in place.