Как выбрать из таблицы строки, чтоб сумма значений не превышала заданную величину?
Вроде так должно сработатьSELECT *
FROM (
  SELECT *,
    SUM(amount) OVER (ORDER BY created_at) AS sum_amount
  FROM таблица
) t
WHERE t.sum_amount <= ?;
Вообще, это частный случай задачи о рюкзаке, и одним запросом SQL заведомо не решается.