select max(buy) from price where marketId=309;
Att skapa individuella index på varje kolumn tillåter förmodligen inte MySQL att optimera frågan.
För den här frågan vill du ha ett sammansatt index på (marketId, buy)
.
create index idx_price_market_buy ON price (marketId, buy);
Ordningen av kolumner i indexet har betydelse:först sökfiltret på marketId
(så att du vill ha den här kolumnen på första plats i det sammansatta indexet), då den beräknar det maximala buy
.