i have a table such sa below:
Name1, Name2, Name3, Nam4, C1, C2,.., C100
and in this table, i have found index for Name1-Nam4,
i don't why sql below is very slow?
select
Name1, sum(C1), ...., Sum(C100)
from
(
select
Name1, Name2, sum(C1) as C1, ...., Sum(C100) as C100
from
(
select
Name1, Name2, Name3, sum(C1) as C1, ...., Sum(C100) as C100
from
(
select
Name1, Name2, Name3, Name4, C1, ...., C100
from
My_Table
group by Name1, Name2, Name3, Name4
) as T
group by Name1, Name2, Nam3
) as T
group by Name1, Name2
) as T
group by Name1
Does 'Group By' affect the speed of query?
Yes... It depends with your number of data...
I found your query is strange...
Why not, can you try the following query..
select
Name1, sum(C1), ...., Sum(C100)
from
My_Table
group by Name1
Bcs.. finally you are going to get only the Name1 data...
If you need kind of Rolling up data... use ROLLUP instead of multiple Subqueries...