create table t([id] int,price int,name varchar(20),[date] datetime)insert into t values(1,5,'a','2011-1-2') insert into t values(1,5,'a','2011-1-5') insert into t values(1,5,'a','2011-1-7') insert into t values(1,5,'e','2011-1-8') insert into t values(1,5,'d','2011-1-9') insert into t values(1,5,'f','2011-2-2') insert into t values(1,5,'f','2011-2-5') insert into t values(1,5,'h','2011-2-6') insert into t values(1,5,'i','2011-3-1') insert into t values(1,5,'g','2011-4-1')select month([date]) [month],[name],sum(price) price from t group by month([date]),[name] with rollup
insert into t values(1,5,'a','2011-1-5')
insert into t values(1,5,'a','2011-1-7')
insert into t values(1,5,'e','2011-1-8')
insert into t values(1,5,'d','2011-1-9')
insert into t values(1,5,'f','2011-2-2')
insert into t values(1,5,'f','2011-2-5')
insert into t values(1,5,'h','2011-2-6')
insert into t values(1,5,'i','2011-3-1')
insert into t values(1,5,'g','2011-4-1')select month([date]) [month],[name],sum(price) price
from t
group by month([date]),[name]
with rollup