특정 그룹의 사용자별로 데이터를 정렬하려고합니다. 지금까지이SQL Server에서 쿼리 도움말 그룹화
Origional_Date ID FORM Total
2012-03-01 1855 3 1283
2012-03-01 2869 4 2306
2012-03-01 5555 4 6440
2012-03-01 5555 3 8373
2012-03-01 2527 3 8476
2012-03-01 922 3 823
2012-03-15 2907 4 1420
2012-03-15 5555 3 2892
2012-03-15 2914 4 5008
2012-03-15 2375 3 4594
쿼리입니다 :
는 웹 IDOrigional_Date ID FORM Total
2012-03-01 Web 3 8373
2012-03-01 Direct 3 10582
2012-03-01 Web 4 6440
2012-03-01 Direct 4 2306
2012-03-15 WEB 3 2892
2012-03-15 Direct 3 4594
2012-03-15 Direct 4 6428
인 경우 :
DECLARE @StartDate smalldatetime, @EndDate smalldatetime, @Web_ID as smallint
SET @StartDate = '20120301'
SET @EndDate = '20120331'
SET @Web_ID = '5555'
SELECT DATEADD(WEEK, DATEDIFF(WEEK, 0, [Origional_Date]), -1) as [Origional_Date]
,[ID]
,[Form]
,SUM([Total]) as [Total]
FROM mytable
WHERE [Origional_Date] between @StartDate and @EndDate
AND [ID] = @Web_ID
GROUP BY DATEADD(WEEK, DATEDIFF(WEEK, 0, [Origional_Date]), -1), [ID], [Form]
ORDER BY [Origional_Date], [Form] ASC
는 내가 뭘하려고 오전처럼 내 데이터를 표시처럼 내 데이터는 보이는 5555 및 Direct는 다른 것입니다.
난 그냥 확실하지 않다 방법이 함께 할 수있는 경우는 "그룹화"를에서 수행해야하는 경우 문 "IF"또는
감사합니다!
필터는 선택 당 하나 개의 ID를 반환합니다. 맞다? – Jones