РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
87 of 258 menu

Метод isNotNull класса Expr

Метод isNotNull класса Expr создаёт SQL-условие IS NOT NULL для указанного поля. Он принимает одним параметром имя поля или выражение и возвращает объект Comparison, который можно передать в методы where или andWhere QueryBuilder. Метод используется, когда нужно выбрать записи, у которых значение поля не равно NULL.

Синтаксис

public function isNotNull(string $x): Comparison

Пример

Давайте выберем статьи, у которых поле text не равно NULL:

<?php namespace App\Repository; use App\Entity\Article; use Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepository; use Doctrine\ORM\Query\Expr; use Doctrine\Persistence\ManagerRegistry; class ArticleRepository extends ServiceEntityRepository { public function __construct(ManagerRegistry $registry) { parent::__construct($registry, Article::class); } public function findByTextNotNull(): array { $expr = new Expr(); $qb = $this->createQueryBuilder('a'); $qb->where($expr->isNotNull('a.text')); return $qb->getQuery()->getResult(); } } ?>

Результат выполнения кода:

["article 1", "article 2", "article 3"]

Пример

Давайте объединим условие isNotNull с другим условием через метод andWhere:

<?php namespace App\Repository; use App\Entity\Article; use Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepository; use Doctrine\ORM\Query\Expr; use Doctrine\Persistence\ManagerRegistry; class ArticleRepository extends ServiceEntityRepository { public function __construct(ManagerRegistry $registry) { parent::__construct($registry, Article::class); } public function findActiveWithText(): array { $expr = new Expr(); $qb = $this->createQueryBuilder('a'); $qb->where($expr->isNotNull('a.text')) ->andWhere($expr->eq('a.boolean', true)); return $qb->getQuery()->getResult(); } } ?>

Результат выполнения кода:

["article 2", "article 3"]

Смотрите также

  • метод isNull,
    который создаёт условие IS NULL
  • метод eq,
    который создаёт условие равенства
  • метод neq,
    который создаёт условие неравенства
  • класс Expr,
    который содержит все методы построения условий
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить