0

これは私の問題です: Address エンティティに oneToMany 関係を持つユーザー エンティティがあります。単一のクエリで、アドレスのないすべてのユーザーを取得したい。これは私のクエリビルダーです:

$qb = $this->createQueryBuilder('u')
    ->where('u.enabled = :enabled')
    ->setParameter('enabled', true)
    //->andWhere('u.addresses ..... ?? how to do that ?
    ->orderBy('u.created', 'DESC');

    if ( is_int($limit) && $limit > 0 ) {
        $qb = $qb->setFirstResult($offset)
                 ->setMaxResults($limit);
    }

    return $qb;

1 つのクエリで、アドレスのないすべてのユーザーのみを取得する方法がわかりません...誰か助けてくれませんか?

4

1 に答える 1

2

DQL ドキュメントの例から、IS EMPTY

$qb = $this
    ->createQueryBuilder('u')
    ->where('u.enabled = :enabled')
    ->setParameter('enabled', true)
    ->andWhere('u.addresses IS EMPTY')
    ->orderBy('u.created', 'DESC');

    if ($limit) {
        $qb = $qb
            ->setFirstResult($offset)
            ->setMaxResults($limit);
    }

    return $qb;
于 2013-02-26T11:08:07.827 に答える