Есть база sqlite и две таблички
в первой (requests) всякие данные (около 26000)
во второй (requestrewards) requestid и число (примерно 125000 записей)
надо выбрать пять самых больших requests по сумме из requestrewards
Код ниже делает это более чем за 1 секунду
SELECT SUM(value) as `total`, requestid, R.*, R.rowid as id
FROM `requestrewards`
LEFT JOIN `requests` as R ON R.rowid = requestrewards.requestid
GROUP BY `requestid` ORDER BY `total` DESC LIMIT 5
Очень хочется оптимизировать, т.к. нужны реальные данные. Кеш не подойдет.