Сумма суммы за один день - PullRequest
0 голосов
/ 14 июня 2019

Я пытаюсь подсчитать общую сумму пользовательских платежей за один день (24 часа ..)

Мой запрос возвращает все результаты, даже если даты далеки от диапазона в 24 часа.

Как это исправить?

resultDaily = $this->getPayRepository()
        ->createQueryBuilder('p')
        ->select('sum(p.amount) Total')
        ->where('p.date >= :end')
        ->andWhere('p.user = :user')
        ->setParameter('end', new \DateTime('-1 day'))
        ->setParameter('user', $user)
        ->getQuery()
        ->getArrayResult();

Я изменил код. Это выглядит чище, но дает тот же результат.

Edit:

$resultDaily = $this->getPayRepository()
        ->createQueryBuilder('p')
        ->select('sum(p.amount) Total')
        ->where("DATE_ADD(p.date, 24,'hour') >= CURRENT_TIMESTAMP()")
        ->andWhere('p.user = :user')
        ->setParameter('user', $user)
        ->getQuery()
        ->getArrayResult();

    return $resultDaily;

1 Ответ

0 голосов
/ 14 июня 2019

Спасибо всем за повтор.

Я сделал это с:

->where("DATE(p.transactionDate) >= DATE_SUB(CURRENT_DATE(), 24, 'hour')")
...