Освоение исключений в Laravel: руководство по методам «whereNot»

В Laravel методыwhereNot предоставляют мощные инструменты для исключения определенных значений или условий из запросов к базе данных. В этой статье мы рассмотрим различные методы «whereNot», доступные в Laravel, сопровождаемые разговорными объяснениями и примерами кода. К концу вы получите четкое представление о том, как использовать эти методы для эффективной фильтрации и исключения данных.

  1. whereNot()
    Базовый методwhereNot позволяет исключать строки из запроса на основе одного условия. Он принимает два аргумента: столбец, который вы хотите отфильтровать, и значение, которое нужно исключить. Например:
$users = DB::table('users')
            ->whereNot('status', 'active')
            ->get();

Этот запрос возвращает всех пользователей, чей статус не «активен».

  1. whereNotIn()
    Метод «whereNotIn» используется для исключения строк на основе нескольких значений в данном столбце. Вы можете передать массив значений, чтобы исключить их из запроса. Вот пример:
$users = DB::table('users')
            ->whereNotIn('id', [1, 2, 3])
            ->get();

В этом случае запрос возвращает всех пользователей, кроме пользователей с идентификаторами 1, 2 и 3.

  1. whereNotBetween()
    МетодwhereNotBetween позволяет исключать строки на основе диапазона значений. Он принимает два аргумента: имя столбца и массив, представляющий диапазон. Вот пример:
$users = DB::table('users')
            ->whereNotBetween('age', [18, 30])
            ->get();

Этот запрос позволит получить пользователей, возраст которых не составляет от 18 до 30 лет.

  1. whereNotNull()
    Метод «whereNotNull» используется для исключения строк, в которых определенный столбец имеет значение NULL. В качестве аргумента он принимает имя столбца. Вот пример:
$users = DB::table('users')
            ->whereNotNull('email')
            ->get();

Этот запрос извлекает всех пользователей, у которых столбец электронной почты не равен нулю.

  1. whereNotNullIn()
    Метод «whereNotNullIn» объединяет методы «whereNotNull» и «whereNotIn», позволяя исключать строки, в которых значение столбца не равно нулю и не входит в заданный набор значений. Вот пример:
$users = DB::table('users')
            ->whereNotNullIn('email', ['admin@example.com', 'test@example.com'])
            ->get();

В этом случае запрос возвращает пользователей, чей адрес электронной почты не равен нулю, но и не равен «admin@example.com» или «test@example.com».

В этой статье мы рассмотрели несколько методов «whereNot», доступных в Laravel для исключения определенных значений или условий из запросов к базе данных. Понимание и эффективное использование этих методов может значительно расширить ваши возможности фильтрации данных. Используя подходящий для вашего случая метод “whereNot”, вы можете получить именно те данные, которые вам нужны, исключив при этом нежелательные результаты, что приведет к более эффективным и целенаправленным результатам запроса.