Метод whereNot
Метод whereNot применяется к запросу Eloquent
или Query Builder и возвращает тот же запрос,
дополненный условием исключения. По сути, это
инвертированный метод where. Первым параметром
передаётся имя колонки, вторым - оператор сравнения,
третьим - значение. Если оператор не указан,
используется равенство. Метод добавляет условие
NOT в SQL-запрос, исключая записи, удовлетворяющие
условию.
Синтаксис
<?php
Model::whereNot($column, $operator, $value);
?>
Пример
Давайте исключим статьи, у которых поле 'status'
равно 'draft':
<?php
use AppModelsArticle;
$articles = Article::whereNot('status', 'draft')->get();
foreach ($articles as $article) {
echo $article->title;
}
?>
Результат выполнения кода:
"article 1"
"article 2"
"article 3"
Пример
Давайте исключим статьи с id меньше или равным 2:
<?php
use AppModelsArticle;
$articles = Article::whereNot('id', '<=', 2)->get();
foreach ($articles as $article) {
echo $article->title;
}
?>
Результат выполнения кода:
"article 3"
"article 4"
"article 5"
Пример
Давайте исключим статьи, у которых поле 'views'
не равно 0 (то есть оставим только статьи
с нулевым количеством просмотров):
<?php
use AppModelsArticle;
$articles = Article::whereNot('views', '>', 0)->get();
foreach ($articles as $article) {
echo $article->title . " (views: " . $article->views . ")";
}
?>
Результат выполнения кода:
"article 1 (views: 0)"
"article 4 (views: 0)"
Смотрите также
-
метод
where,
который добавляет условие выборки записей -
метод
orWhere,
который добавляет условие через ИЛИ -
метод
whereNotIn,
который исключает записи по списку значений -
метод
whereNull,
который выбирает записи с пустым полем