>Is it possible to define/ create aggregate tables which store monthly or yearly totals. So that it doesn't take any time to calculate these totals.
>I am asking about table as i think a view would still take time to calculate.
You can do that with a table or with indexed view. To maintain the aggregate table you'll have to create a trigger(s) on the original table that will update the aggregate table. For indexed views see
Designing Indexed Views in BOL. In both cases you will have to consider how much overhead it will create for original table INSERT/DELETE/UPDATE operations.
--sb--