Есть таблица с целочисленными парами (ключ, значение). Ключи уникальные.
Задана максимально допустимая сумма значений: S. Выбираем из таблицы пару с самым маленьким ключом. Если значение при этом ключе меньше чем S, то добавляем к выборке пару со вторым по величие ключом. Если сумма значений у выбранных пар меньше чем S, то добавляем к выборке пару с третьим по величине ключом. И так далее, до тех пор пока сумма не перестанет быть меньше чем S, или пока не будут выбраны вообще все пары. Требуется узнать ключ K, который будет выбран последним.
Примерно то же самое, но более строгим языком:
найти максимальный ключ K, такой, что
сумма значений соответствующих всем ключам, таким, что
ключ меньше чем K,
меньше чем S
Это возможно сделать SQL-запросом?