доктрина получить последнее сообщение - PullRequest
0 голосов
/ 24 февраля 2019

У меня есть эта схема в базе данных и как получить последние сообщения, и поле is_seen имеет значение false, не верно для получателя 10, например .. база данных схемы:

enter image description here

я создал этот запрос, но у меня есть первое сообщение получателя 10:

запрос:

public function messagesByReceiver($user) {

    /** @var \Doctrine\ORM\Query */
   $query = $this->createQueryBuilder('a')
      ->select('a')
      ->where('a.receiver = :user')
      ->setParameter('user', $user)
      ->groupBy('a.sender')
      ->orderBy('a.createdAt','DESC')
    ;


   return $query->getQuery()->getResult();
  }

1 Ответ

0 голосов
/ 24 февраля 2019

Хм, поэтому, если я правильно вас понял, вы хотите использовать следующие условия:

  1. receive_id равен 10
  2. is_seen имеет значение false

И еслиэто случай использования, тогда

$query = $this->createQueryBuilder('a')
    ->select('a')
    ->where('a.receiver = :user')
    ->andWhere('a.is_seen = 0')
    ->setParameter('user', $user)
    ->groupBy('a.sender')
    ->orderBy('a.createdAt','DESC');

Должен сделать свое дело.

...