Hi,
I am a SQL Server 2005 Newbie. I got the task of getting data from a
reporting server view. I can do basic SQL queries. My question is how do I
get started if I want to create a report without having to import this into
Excel and transpose. I have to extract data from users who answer QA surveys.
The query generates x number of rows based on x number of answers to the
questions. I would like to create report that has the last name, first name
on the row headers and the questions as column headers. The answers would be
underneath the column headers and matched to the last name and first name.
I am really frustrated because I have been told that I need to use the pivot
command or use dynamic cross tabs. Others have told me to put my query as a
subselect then pivot on the result.
Here is my basic query. I just need assistance just to get started.
SELECT Distinct
dbo.uvwReport_SurveyAnswers.DateCreated AS DateCreated
,dbo.uvwReport_SurveyAnswers.userid AS UserID
,dbo.uvw_User.LastName AS LastName
,dbo.uvw_User.FirstName AS FirstName
,dbo.uvwReport_SurveyQuestions.ordernumber AS OrderNumber
,dbo.uvwReport_SurveyQuestions.QuestionText AS QuestionText
,dbo.uvwReport_SurveyAnswers.QuestionAnswer AS QuestionAnswer
FROM
dbo.uvwReport_Surveys
INNER JOIN dbo.uvwReport_SurveyQuestions
ON dbo.uvwReport_Surveys.surveyid = dbo.uvwReport_SurveyQuestions.surveyid
INNER JOIN dbo.uvwReport_SurveyAnswers
ON dbo.uvwReport_SurveyQuestions.QuestionID =
dbo.uvwReport_SurveyAnswers.QuestionID
INNER JOIN dbo.uvw_User
ON dbo.uvwReport_SurveyAnswers.userid = dbo.uvw_User.userid
WHERE
dbo.uvwReport_SurveyAnswers.surveyid = 100
Group by dbo.uvwReport_SurveyAnswers.DateCreated
,dbo.uvwReport_SurveyAnswers.userid
,dbo.uvw_User.LastName
,dbo.uvw_User.FirstName
,dbo.uvwReport_SurveyQuestions.ordernumber
,dbo.uvwReport_SurveyQuestions.QuestionText
,dbo.uvwReport_SurveyAnswers.QuestionAnswer
Thanks
--