->select('d')
->from(Deposit::class, 'd')
->innerJoin(Plan::class, 'p', Join::WITH, 'd.plan_id = p.id')
->where('p.is_disabled = false')
->andWhere('p.is_complex = false')
->andWhere('d.status = :st')
->andWhere('d.next_accrual <= :time')
->andWhere((new Expr\Comparison('type', 'IN', '(:hello, :bitch)')))
->getQuery()
->setLockMode(LockMode::PESSIMISTIC_WRITE)
->toIterable([
'st' => Deposit\StatusEnum::WAITING,
'time' => Carbon::now('UTC')->format('Y-m-d H:i:s')
]);
А так пробовали?
внимание на andWhere((new Expr\Comparison
Попробую, спасибо
Как-то не сработало =(
тогда вам нужно попробовать расширить синтаксис DBAL через написание своих функций каких-то
Обсуждают сегодня