Не знаю, как написать этот код в Laravel / Eloquent.
Пытался использовать когда (), но у меня не работает.
$sql_string = "SELECT *
FROM
(
SELECT name, priority, zone, hours, price,
IF (@day_hours >= ?, @day_hours := 0, @day_hours) AS hours_if,
IF (@day_hours = 0, @days := @days + 1, @days) AS days_if,
@days AS day,
@day_hours := @day_hours + hours AS day_hours,
@budget := @budget - price AS budget
FROM $table_name, (select @day_hours := 0, @days := 0, @budget := ?) AS INIT
ORDER BY priority, zone
) AS DATA
WHERE budget > 0 AND day <= ?";
Я ожидаю, чтобы подготовиться к использованию Eloquent код: D