Есть 2 таблицы, одна содержит покупки, другая пополнения. Покупки неделимы, пополнения делимы, данные упорядочены по дате. Задача - найти распределение пополнений счета пользователя по покупкам, которые он совершил.
Ну, например, триггером. При вставке данных в таблицы пополнения или списания заносить нужное вам соответствие во вспомогательную таблицу.
На голом select я бы не стал бы даже связываться. Интуиция подсказывает, что даже если это и реально, то будет очень медленно работать на реальных объемах данных.