В Laravel 8 для создания условия в запросе можно использовать метод where
или его модификации, в зависимости от требуемой логики.
Метод where
принимает два аргумента: название столбца и значение, которые нужно проверить. Например, чтобы выбрать все записи из таблицы users
, где значение столбца age
равно 25, можно использовать следующий код:
$users = DB::table('users')->where('age', 25)->get();
Метод where
также может принимать оператор сравнения вторым аргументом, например:
$users = DB::table('users')->where('age', '>=', 18)->get();
Если требуется применить несколько условий в запросе, можно использовать цепочку методов where
. Например, чтобы выбрать всех пользователей, чьи имена начинаются на букву "A" и у которых возраст больше 20, можно использовать следующий код:
$users = DB::table('users') ->where('name', 'like', 'A%') ->where('age', '>', 20) ->get();
Помимо метода where
, Laravel 8 предлагает и другие методы для создания более сложных условий:
- orWhere
- добавляет условие, которое будет выполняться, если не выполнены предыдущие условия
- whereIn
- добавляет условие, которое проверяет, принадлежит ли значение столбца указанному массиву значений
- whereNull
и whereNotNull
- добавляют условия на проверку значения столбца на null или не null соответственно
- whereBetween
- добавляет условие, которое проверяет, находится ли значение столбца в указанном диапазоне значений
Вот несколько примеров использования этих методов:
$users = DB::table('users') ->where('name', 'John') ->orWhere('name', 'Jane') ->get(); $users = DB::table('users') ->whereIn('id', [1, 2, 3]) ->get(); $users = DB::table('users') ->whereNull('phone') ->get(); $users = DB::table('users') ->whereBetween('age', [18, 30]) ->get();
Также можно комбинировать условия с использованием логических операторов and
и or
, например:
$users = DB::table('users') ->where('name', 'like', 'A%') ->orWhere(function ($query) { $query->where('age', '>', 20) ->where('age', '<', 30); }) ->get();
Это лишь несколько примеров создания условий в Laravel 8. Фреймворк предлагает множество функций для работы с базой данных и создания сложных запросов, чтобы удовлетворить ваши требования.