Microsoft
Software
Hardware
Network
Question : Complex SQL Statement Help
I have a table that has survey results. The table structure is the followin
SurveyID SurveyMonth Q1 Q2 Q3 Q4 Q5
10 Jun2009 E E G F B
11 Jun2009 G E B G E
12 May2009 E G G B E
13 May2009 B G B E N
Ok each question has a possibe of 5 answers (E,G,B,P,N) I need a sql statement that would count the number of answers in each question for which ever survey(jun2009 or may2009) I want to report on. So the report will look like this
May2009 survey
E G B P N
question 1 1 0 1 0 0
question 2 0 2 0 0 0
question 3 0 1 1 0 0
question 4 1 0 1 0 0
question 5 1 0 0 0 0
Can I get a single sql statement to give me the data the way I need it, or do I have to pull all data for the survey and then use vb to loop through and do counts in some way. A suggestion would be greatly appreciated.
Answer : Complex SQL Statement Help
If you need to get this using SQL syntax, you have to use unions (single union for each question), however it will be rather hardcoded. Which DBMS you are using?
Random Solutions
How do I change my internal domain name to .local
Generated contacts not showing up in distribution lists
OWA with two Exchange 2003 servers
Hide / Unhide Database Objects With VBA
Questio on beforeupdate event to prevent duplicate record
Excel slow opening sheet
Any quick way to traverse through labels/textbox on a report design page?
Increasing Execution Timeout within SQL Server 2005 Express
How do you copy Excel macros from one windows profile to another?
How do I change the height of a decorative border box conditionally on the contents of a text box within the box