27,580
社区成员




select area_no,count(*)
from RawDate
where action_time='2013/1/1'
group by area_no
order by area_no
DECLARE @SQL VARCHAR(8000)
SET @SQL='SELECT action_time'
SELECT @SQL=@SQL+',ISNULL(SUM(CASE WHEN area_no='''+CAST(area_no AS VARCHAR(10))+''' THEN 1 END),0)[area_no'+CAST(ROW_NUMBER()OVER(ORDER BY area_no)AS VARCHAR(10))+']'
FROM RawData GROUP BY area_no ORDER BY area_no
SET @SQL=@SQL+'FROM RawData GROUP BY action_time'
--PRINT @SQL
EXEC(@SQL)
类似这样,动态行转列select area_no,count(*)
from RawDate
group by area_no,action_time
order by area_no
action_time把它也放到分组里面