select max(buy) from price where marketId=309;
La creazione di indici individuali su ciascuna colonna probabilmente non consente a MySQL di ottimizzare la query.
Per questa query, desideri un indice composto su (marketId, buy)
.
create index idx_price_market_buy ON price (marketId, buy);
L'ordine delle colonne nell'indice è importante:prima la query filtra su marketId
(quindi vuoi che questa colonna sia in prima posizione nell'indice composto), quindi calcola il massimo buy
.