Если в общих чертах, то я делал в скрипте, используя циклы, задача была сопоставить продажи, с поставками, например есть 3 транзакции поставки, и куча продаж, соответственно беру первую поставку, ее объём и цены поставки, сопоставляю с продажами, пока не закончится объём поставки 1, и так далее. Это относится как раз к фифо реализации в том числе. Использовал циклы и джоины. Но это не единственный пример.