Строитель
класс Строитель (Просмотреть исходный код)
Трейты
| BuildsQueries |
| ForwardsCalls |
| Macroable |
Свойства
| static protected array | $macros | Зарегистрированные макросы строк. | from Macroable |
| ConnectionInterface | $connection | Экземпляр подключения к базе данных. | |
| Grammar | $grammar | Экземпляр синтаксического анализатора запросов базы данных. | |
| Processor | $processor | Экземпляр постпроцессора запросов базы данных. | |
| array | $bindings | Текущие значения связей запроса. | |
| array | $aggregate | Функция и столбец агрегирования для выполнения. | |
| array | $columns | Столбцы, которые должны быть возвращены. | |
| bool | $distinct | Указывает, возвращает ли запрос уникальные результаты. | |
| string | $from | Таблица, на которую нацелен запрос. | |
| array | $joins | Соединения таблиц для запроса. | |
| array | $wheres | Условие where для запроса. | |
| array | $groups | Группировки для запроса. | |
| array | $havings | Ограничения having для запроса. | |
| array | $orders | Порядковые условия для запроса. | |
| int | $limit | Максимальное количество записей для возврата. | |
| int | $offset | Количество записей, которые нужно пропустить. |
| array | $unions | Заявления объединения запроса. | |
| int | $unionLimit | Максимальное количество записей объединения для возврата. | |
| int | $unionOffset | Количество записей объединения, которые нужно пропустить. | |
| array | $unionOrders | Порядок сортировки для запроса объединения. | |
| string|bool | $lock | Указывает, используется ли блокировка строк. | |
| array | $operators | Все доступные операторы условий. | |
| bool | $useWritePdo | Использовать ли write pdo для выбора. |
Методы
| bool | chunk(int $count, callable $callback) Разбить результаты запроса на части. | из BuildsQueries |
| bool | each(callable $callback, int $count = 1000) Выполнить обратный вызов над каждым элементом с использованием разбиения. | из BuildsQueries |
| Model|object|BuildsQueries|null | first(array $columns = ['*']) Выполнить запрос и получить первый результат. | из BuildsQueries |
| mixed|$this | when(mixed $value, callable $callback, callable $default = null) Применить изменения запроса обратного вызова, если заданное «значение» истинно. | из BuildsQueries |
| Builder | tap(Closure $callback) Передать запрос в заданный обратный вызов. | из BuildsQueries |
| mixed|$this | unless(mixed $value, callable $callback, callable $default = null) Применить изменения запроса обратного вызова, если заданное «значение» ложно. | из BuildsQueries |
| LengthAwarePaginator | paginator(Collection $items, int $total, int $perPage, int $currentPage, array $options) Создать новый экземпляр пагинатора с учетом длины. | from BuildsQueries |
| Paginator | simplePaginator(Collection $items, int $perPage, int $currentPage, array $options) Создать новый простой экземпляр пагинатора. | from BuildsQueries |
| mixed | forwardCallTo(mixed $object, string $method, array $parameters) Перенаправить вызов метода заданному объекту. | from ForwardsCalls |
| static void | throwBadMethodCallException(string $method) Выбросить исключение о неверном вызове метода для данного метода. | from ForwardsCalls |
| static void | macro(string $name, object|callable $macro) Зарегистрировать пользовательский макрос. | from Macroable |
| static void | mixin(object $mixin) Смешать другой объект в класс. | from Macroable |
| статический bool | hasMacro(string $name) Проверяет, зарегистрирован ли макрос. | из Macroable |
| статический mixed | __callStatic(string $method, array $parameters) Динамически обрабатывает вызовы к классу. | из Macroable |
| mixed | __call(string $method, array $parameters) Обрабатывает динамические вызовы методов в метод. | |
| void | __construct(ConnectionInterface $connection, Grammar $grammar = null, Processor $processor = null) Создает новый экземпляр билдера запросов. | |
| $this | select(array|mixed $columns = ['*']) Устанавливает столбцы для выбора. | |
| Builder|Builder | selectSub(Closure|Builder|string $query, string $as) Добавляет подзапрос к запросу. | |
| Builder|Builder | selectRaw(string $expression, array $bindings = []) Добавляет новое выражение "сырого" выбора в запрос. |
| Builder|Builder | fromSub(Closure|Builder|string $query, string $as) Выполняет выборку из подзапроса. | |
| Builder|Builder | fromRaw(string $expression, mixed $bindings = []) Добавляет в запрос условие from с сырой строкой. | |
| array | createSub(Closure|Builder|string $query) Создаёт подзапрос и обрабатывает его. | |
| array | parseSub(mixed $query) Обрабатывает подзапрос для получения SQL и значений. | |
| $this | addSelect(array|mixed $column) Добавляет новый столбец для выборки в запрос. | |
| $this | distinct() Выполняет запрос, возвращая только уникальные результаты. | |
| $this | from(string $table) Устанавливает таблицу, к которой применяется запрос. | |
| $this | join(string $table, Closure|string $first, string|null $operator = null, string|null $second = null, string $type = 'inner', bool $where = false) Добавляет условие объединения в запрос. |
| Builder|Builder | joinWhere(string $table, Closure|string $first, string $operator, string $second, string $type = 'inner') Добавить условие «join where» в запрос. | |
| Builder|Builder | joinSub(Closure|Builder|string $query, string $as, Closure|string $first, string|null $operator = null, string|null $second = null, string $type = 'inner', bool $where = false) Добавить условие объединения подзапроса в запрос. | |
| Builder|Builder | leftJoin(string $table, Closure|string $first, string|null $operator = null, string|null $second = null) Добавить левое объединение в запрос. | |
| Builder|Builder | leftJoinWhere(string $table, string $first, string $operator, string $second) Добавить условие «join where» в запрос. | |
| Builder|Builder | leftJoinSub(Closure|Builder|string $query, string $as, string $first, string|null $operator = null, string|null $second = null) Добавить левое объединение подзапроса в запрос. |
| Builder|Builder | rightJoin(string $table, Closure|string $first, string|null $operator = null, string|null $second = null) Добавить правое соединение к запросу. | |
| Builder|Builder | rightJoinWhere(string $table, string $first, string $operator, string $second) Добавить условие «правое соединение, где» к запросу. | |
| Builder|Builder | rightJoinSub(Closure|Builder|string $query, string $as, string $first, string|null $operator = null, string|null $second = null) Добавить подзапрос правого соединения к запросу. | |
| Builder|Builder | crossJoin(string $table, Closure|string|null $first = null, string|null $operator = null, string|null $second = null) Добавить условие «перекрёстное соединение» к запросу. | |
| void | mergeWheres(array $wheres, array $bindings) Объединить массив условий и привязок. | |
| $this | where(string|array|Closure $column, mixed $operator = null, mixed $value = null, string $boolean = 'and') Добавить основное условие к запросу. | |
| $this | addArrayOfWheres(array $column, string $boolean, string $method = 'where') Добавить массив условий к запросу. |
| array | prepareValueAndOperator(string $value, string $operator, bool $useDefault = false) Подготовить значение и оператор для условия where. | |
| bool | invalidOperatorAndValue(string $operator, mixed $value) Определить, является ли данная комбинация оператора и значения допустимой. | |
| bool | invalidOperator(string $operator) Определить, поддерживается ли данный оператор. | |
| Builder|Builder | orWhere(string|array|Closure $column, mixed $operator = null, mixed $value = null) Добавить условие "или где" в запрос. | |
| Builder|Builder | whereColumn(string|array $first, string|null $operator = null, string|null $second = null, string|null $boolean = 'and') Добавить условие "где" сравнивая две колонки в запрос. | |
| Builder|Builder | orWhereColumn(string|array $first, string|null $operator = null, string|null $second = null) Добавить условие "или где" сравнивая две колонки в запрос. | |
| $this | whereRaw(string $sql, mixed $bindings = [], string $boolean = 'and') Добавить сырое условие where в запрос. | |
| Builder|Builder | orWhereRaw(string $sql, mixed $bindings = []) Добавить сырое условие "или где" в запрос. |
| $this | whereIn(string $column, mixed $values, string $boolean = 'and', bool $not = false) Добавить условие «where in» к запросу. | |
| Builder|Builder | orWhereIn(string $column, mixed $values) Добавить условие «or where in» к запросу. | |
| Builder|Builder | whereNotIn(string $column, mixed $values, string $boolean = 'and') Добавить условие «where not in» к запросу. | |
| Builder|Builder | orWhereNotIn(string $column, mixed $values) Добавить условие «or where not in» к запросу. | |
| $this | whereInSub(string $column, Closure $callback, string $boolean, bool $not) Добавить условие «where in» с подзапросом к запросу. | |
| $this | whereInExistingQuery(string $column, Builder|Builder $query, string $boolean, bool $not) Добавить внешний подзапрос к запросу. | |
| $this | whereNull(string $column, string $boolean = 'and', bool $not = false) Добавить условие «where null» к запросу. | |
| Builder|Builder | orWhereNull(string $column) Добавить условие «or where null» к запросу. |
| Builder|Builder | whereNotNull(string $column, string $boolean = 'and') Добавить условие "где не пусто" к запросу. | |
| $this | whereBetween(string $column, array $values, string $boolean = 'and', bool $not = false) Добавить условие "где между" к запросу. | |
| Builder|Builder | orWhereBetween(string $column, array $values) Добавить условие "или где между" к запросу. | |
| Builder|Builder | whereNotBetween(string $column, array $values, string $boolean = 'and') Добавить условие "где не между" к запросу. | |
| Builder|Builder | orWhereNotBetween(string $column, array $values) Добавить условие "или где не между" к запросу. | |
| Builder|Builder | orWhereNotNull(string $column) Добавить условие "или где не пусто" к запросу. | |
| Builder|Builder | whereDate(string $column, string $operator, DateTimeInterface|string $value = null, string $boolean = 'and') Добавить условие "где дата" к запросу. |
| Builder|Builder | orWhereDate(string $column, string $operator, DateTimeInterface|string $value = null) Добавить условие "или где дата" в запрос. | |
| Builder|Builder | whereTime(string $column, string $operator, DateTimeInterface|string $value = null, string $boolean = 'and') Добавить условие "где время" в запрос. | |
| Builder|Builder | orWhereTime(string $column, string $operator, DateTimeInterface|string $value = null) Добавить условие "или где время" в запрос. | |
| Builder|Builder | whereDay(string $column, string $operator, DateTimeInterface|string $value = null, string $boolean = 'and') Добавить условие "где день" в запрос. | |
| Builder|Builder | orWhereDay(string $column, string $operator, DateTimeInterface|string $value = null) Добавить условие "или где день" в запрос. |
| Builder|Builder | whereMonth(string $column, string $operator, DateTimeInterface|string $value = null, string $boolean = 'and') Добавить условие "где месяц" к запросу. | |
| Builder|Builder | orWhereMonth(string $column, string $operator, DateTimeInterface|string $value = null) Добавить условие "или где месяц" к запросу. | |
| Builder|Builder | whereYear(string $column, string $operator, DateTimeInterface|string|int $value = null, string $boolean = 'and') Добавить условие "где год" к запросу. | |
| Builder|Builder | orWhereYear(string $column, string $operator, DateTimeInterface|string|int $value = null) Добавить условие "или где год" к запросу. | |
| $this | addDateBasedWhere(string $type, string $column, string $operator, mixed $value, string $boolean = 'and') Добавить условие, основанное на дате (год, месяц, день, время), к запросу. | |
| Builder|Builder | whereNested(Closure $callback, string $boolean = 'and') Добавить вложенное условие к запросу. |
| Builder | forNestedWhere() Создать новый экземпляр запроса для вложенного условия where. | |
| $this | addNestedWhereQuery(Builder|Builder $query, string $boolean = 'and') Добавить другой объект Query Builder в качестве вложенного условия where к объекту Query Builder. | |
| $this | whereSub(string $column, string $operator, Closure $callback, string $boolean) Добавить полное подзапросное условие к запросу. | |
| $this | whereExists(Closure $callback, string $boolean = 'and', bool $not = false) Добавить условие exists к запросу. | |
| Builder|Builder | orWhereExists(Closure $callback, bool $not = false) Добавить условие or exists к запросу. | |
| Builder|Builder | whereNotExists(Closure $callback, string $boolean = 'and') Добавить условие where not exists к запросу. | |
| Builder|Builder | orWhereNotExists(Closure $callback) Добавить условие or where not exists к запросу. |
| $this | addWhereExistsQuery(Builder $query, string $boolean = 'and', bool $not = false) Добавить условие exists к запросу. | |
| $this | whereRowValues(array $columns, string $operator, array $values, string $boolean = 'and') Добавляет условие where с использованием значений строк. | |
| $this | orWhereRowValues(array $columns, string $operator, array $values) Добавляет условие or where с использованием значений строк. | |
| $this | whereJsonContains(string $column, mixed $value, string $boolean = 'and', bool $not = false) Добавить условие "where JSON содержит" к запросу. | |
| $this | orWhereJsonContains(string $column, mixed $value) Добавить условие "or where JSON содержит" к запросу. | |
| $this | whereJsonDoesntContain(string $column, mixed $value, string $boolean = 'and') Добавить условие "where JSON не содержит" к запросу. | |
| $this | orWhereJsonDoesntContain(string $column, mixed $value) Добавить условие "or where JSON не содержит" к запросу. | |
| $this | whereJsonLength(string $column, mixed $operator, mixed $value = null, string $boolean = 'and') Добавить условие "where JSON длина" к запросу. | |
| $this | orWhereJsonLength(string $column, mixed $operator, mixed $value = null) Добавить условие "or where JSON длина" к запросу. |
| $this | dynamicWhere(string $method, string $parameters) Обрабатывает динамические условия «where» для запроса. | |
| void | addDynamic(string $segment, string $connector, array $parameters, int $index) Добавляет одно динамическое условие «where» в запрос. | |
| $this | groupBy(array ...$groups) Добавляет условие «group by» в запрос. | |
| $this | having(string $column, string|null $operator = null, string|null $value = null, string $boolean = 'and') Добавляет условие «having» в запрос. | |
| Builder|Builder | orHaving(string $column, string|null $operator = null, string|null $value = null) Добавляет условие «or having» в запрос. | |
| $this | havingRaw(string $sql, array $bindings = [], string $boolean = 'and') Добавляет сырое условие «having» в запрос. | |
| Builder|Builder | orHavingRaw(string $sql, array $bindings = []) Добавляет сырое условие «or having» в запрос. | |
| $this | orderBy(string $column, string $direction = 'asc') Добавляет условие «order by» в запрос. | |
| $this | orderByDesc(string $column) Добавляет условие «order by» в порядке убывания. |
| Builder|Builder | latest(string $column = 'created_at') Добавить условие «упорядочить по» для временной метки в запрос. | |
| Builder|Builder | oldest(string $column = 'created_at') Добавить условие «упорядочить по» для временной метки в запрос. | |
| $this | inRandomOrder(string $seed = '') Вывести результаты запроса в случайном порядке. | |
| $this | orderByRaw(string $sql, array $bindings = []) Добавить условие «упорядочить по» в сыром виде в запрос. | |
| Builder|Builder | skip(int $value) Псевдоним для установки значения «смещение» запроса. | |
| $this | offset(int $value) Установить значение «смещение» запроса. | |
| Builder|Builder | take(int $value) Псевдоним для установки значения «ограничение» запроса. | |
| $this | limit(int $value) Установить значение «ограничение» запроса. | |
| Builder|Builder | forPage(int $page, int $perPage = 15) Установить ограничение и смещение для заданной страницы. |
| Builder|Builder | forPageAfterId(int $perPage = 15, int|null $lastId = 0, string $column = 'id') Ограничить запрос следующей "страницей" результатов после заданного ID. | |
| array | removeExistingOrdersFor(string $column) Получить массив со всеми заказами, у которых заданный столбец удален. | |
| Builder|Builder | union(Builder|Closure $query, bool $all = false) Добавить оператор объединения к запросу. | |
| Builder|Builder | unionAll(Builder|Closure $query) Добавить оператор объединения all к запросу. | |
| $this | lock(string|bool $value = true) Заблокировать выбранные строки в таблице. | |
| Builder | lockForUpdate() Заблокировать выбранные строки в таблице для обновления. | |
| Builder | sharedLock() Заблокировать выбранные строки в таблице совместно. | |
| string | toSql() Получить SQL представление запроса. |
| mixed|Builder | find(int $id, array $columns = ['*']) Выполнить запрос для получения единственной записи по ID. | |
| mixed | value(string $column) Получить значение одного столбца из первого результата запроса. | |
| Collection | get(array $columns = ['*']) Выполнить запрос в качестве оператора «select». | |
| array | runSelect() Выполнить запрос в качестве оператора «select» на подключении. | |
| LengthAwarePaginator | paginate(int $perPage = 15, array $columns = ['*'], string $pageName = 'page', int|null $page = null) Разбить данный запрос на страницы с помощью простого пагинатора. | |
| Paginator | simplePaginate(int $perPage = 15, array $columns = ['*'], string $pageName = 'page', int|null $page = null) Получить пагинатор, поддерживающий только простые ссылки «следующая» и «предыдущая». | |
| int | getCountForPagination(array $columns = ['*']) Получить количество всех записей для пагинатора. | |
| array | runPaginationCountQuery(array $columns = ['*']) Выполнить запрос подсчёта для пагинации. | |
| array | withoutSelectAliases(array $columns) Удалить псевдонимы столбцов, так как они нарушают запросы подсчёта. |
| Generator | cursor() Получить генератор для данного запроса. | |
| bool | chunkById(int $count, callable $callback, string $column = 'id', string|null $alias = null) Разбить результаты запроса по сравниванию числовых идентификаторов. | |
| void | enforceOrderBy() Выбросить исключение, если в запросе нет порядка сортировки. | |
| Collection | pluck(string $column, string|null $key = null) Получить массив со значениями заданного столбца. | |
| string|null | stripTableForPluck(string $column) Удалить имя таблицы или псевдоним из идентификатора столбца. | |
| Collection | pluckFromObjectColumn(array $queryResult, string $column, string $key) Извлечь значения столбца из строк, представленных в виде объектов. | |
| Collection | pluckFromArrayColumn(array $queryResult, string $column, string $key) Извлечь значения столбца из строк, представленных в виде массивов. | |
| string | implode(string $column, string $glue = '') Сконкатенировать значения заданного столбца в строку. | |
| bool | exists() Определить, существуют ли какие-либо строки для текущего запроса. | |
| bool | doesntExist() Определить, нет ли строк для текущего запроса. |
| int | count(string $columns = '*') Получить результат "count" запроса. | |
| mixed | min(string $column) Получить минимальное значение заданного столбца. | |
| mixed | max(string $column) Получить максимальное значение заданного столбца. | |
| mixed | sum(string $column) Получить сумму значений заданного столбца. | |
| mixed | avg(string $column) Получить среднее значение значений заданного столбца. | |
| mixed | average(string $column) Псевдоним для метода "avg". | |
| mixed | aggregate(string $function, array $columns = ['*']) Выполнить агрегатную функцию на базе данных. | |
| float|int | numericAggregate(string $function, array $columns = ['*']) Выполнить числовую агрегатную функцию на базе данных. | |
| $this | setAggregate(string $function, array $columns) Установить свойство агрегирования без выполнения запроса. | |
| mixed | onceWithColumns(array $columns, callable $callback) Выполнить заданный обратный вызов при выборе заданных столбцов. | |
| bool | insert(array $values) Вставить новую запись в базу данных. | |
| int | insertGetId(array $values, string|null $sequence = null) Вставить новую запись и получить значение первичного ключа. |
| int | update(array $values) Обновить запись в базе данных. | |
| bool | updateOrInsert(array $attributes, array $values = []) Вставить или обновить запись, соответствующую атрибутам, и заполнить её значениями. | |
| int | increment(string $column, float|int $amount = 1, array $extra = []) Увеличить значение столбца на заданное значение. | |
| int | decrement(string $column, float|int $amount = 1, array $extra = []) Уменьшить значение столбца на заданное значение. | |
| int | delete(mixed $id = null) Удалить запись из базы данных. | |
| void | truncate() Выполнить операцию truncate для таблицы. | |
| Builder | newQuery() Получить новый экземпляр билдера запросов. | |
| Builder | forSubQuery() Создать новый экземпляр запроса для подзапроса. | |
| Expression | raw(mixed $value) Создать выражение для базы данных в сыром виде. | |
| array | getBindings() Получить текущие привязки значений запроса в плоском массиве. | |
| array | getRawBindings() Получить сырой массив привязок. |
| $this | setBindings(array $bindings, string $type = 'where') Установить привязки в билдере запроса. | |
| $this | addBinding(mixed $value, string $type = 'where') Добавить привязку к запросу. | |
| $this | mergeBindings(Builder $query) Объединить массив привязок с нашими привязками. | |
| array | cleanBindings(array $bindings) Удалить все выражения из списка привязок. | |
| ConnectionInterface | getConnection() Получить экземпляр подключения к базе данных. | |
| Processor | getProcessor() Получить экземпляр обработчика запросов базы данных. | |
| Grammar | getGrammar() Получить экземпляр синтаксического анализатора запросов. | |
| $this | useWritePdo() Использовать pdo для записи запроса. | |
| Builder | cloneWithout(array $properties) Клонировать запрос без указанных свойств. | |
| Builder | cloneWithoutBindings(array $except) Клонировать запрос без указанных привязок. |
Подробности
bool chunk(int $count, callable $callback)
Разбить результаты запроса на части.
bool each(callable $callback, int $count = 1000)
Выполнить обратный вызов над каждым элементом с разбивкой на части.
Model|object|BuildsQueries|null first(array $columns = ['*'])
Выполнить запрос и получить первый результат.
mixed|$this when(mixed $value, callable $callback, callable $default = null)
Применить изменения запроса обратного вызова, если заданное "значение" истинно.
mixed|$this unless(mixed $value, callable $callback, callable $default = null)
Применить изменения запроса обратного вызова, если заданное "значение" ложно.
protected LengthAwarePaginator paginator(Collection $items, int $total, int $perPage, int $currentPage, array $options)
Создать новый экземпляр пагинатора с учетом длины.
protected Paginator simplePaginator(Collection $items, int $perPage, int $currentPage, array $options)
Создать новый экземпляр простого пагинатора.
protected mixed forwardCallTo(mixed $object, string $method, array $parameters)
Перенаправить вызов метода заданному объекту.
static protected void throwBadMethodCallException(string $method)
Выбросить исключение BadMethodCallException для данного метода.
static void macro(string $name, object|callable $macro)
Зарегистрировать пользовательское макрос.
static void mixin(object $mixin)
Смешать другой объект в класс.
static bool hasMacro(string $name)
Проверить, зарегистрировано ли макрос.
static mixed __callStatic(string $method, array $parameters)
Динамически обработать вызовы к классу.
смешанный __call(строка $method, массив $parameters)
Обработка динамических вызовов метода.
пусто __construct(ConnectionInterface $connection, Grammar $grammar = null, Processor $processor = null)
Создание нового экземпляра билдера запроса.
$this select(массив|смешанный $columns = ['*'])
Установление столбцов для выбора.
Builder|Builder selectSub(Closure|Builder|string $query, string $as)
Добавить выражение подзапроса в запрос.
Builder|Builder selectRaw(string $expression, array $bindings = [])
Добавить новое выражение "raw" выбора в запрос.
Builder|Builder fromSub(Closure|Builder|string $query, string $as)
Создаёт "from" для выборки из подзапроса.
Builder|Builder fromRaw(string $expression, mixed $bindings = [])
Добавляет к запросу оператор from с сырым выражением.
protected array parseSub(mixed $query)
Разделить подзапрос на SQL и параметры.
$this addSelect(array|mixed $column)
Добавить новый столбец выбора в запрос.
$this distinct()
Вынудить запрос возвращать только уникальные результаты.
$this from(string $table)
Указать таблицу, к которой относится запрос.
$this join(string $table, Closure|string $first, string|null $operator = null, string|null $second = null, string $type = 'inner', bool $where = false)
Добавить условие объединения в запрос.
Builder|Builder joinWhere(string $table, Closure|string $first, string $operator, string $second, string $type = 'inner')
Добавить условие "join where" к запросу.
Builder|Builder joinSub(Closure|Builder|string $query, string $as, Closure|string $first, string|null $operator = null, string|null $second = null, string $type = 'inner', bool $where = false)
Добавить условие объединения с подзапросом к запросу.
Builder|Builder leftJoin(string $table, Closure|string $first, string|null $operator = null, string|null $second = null)
Добавить левое соединение к запросу.
Builder|Builder leftJoinWhere(string $table, string $first, string $operator, string $second)
Добавить условие "join where" к запросу.
Builder|Builder leftJoinSub(Closure|Builder|string $query, string $as, string $first, string|null $operator = null, string|null $second = null)
Добавить левое соединение подзапроса к запросу.
Builder|Builder rightJoin(string $table, Closure|string $first, string|null $operator = null, string|null $second = null)
Добавить правое соединение к запросу.
Builder|Builder rightJoinWhere(string $table, string $first, string $operator, string $second)
Добавить условие "правого объединения с проверкой" к запросу.
Builder|Builder rightJoinSub(Closure|Builder|string $query, string $as, string $first, string|null $operator = null, string|null $second = null)
Добавить подзапрос правого объединения к запросу.
Builder|Builder crossJoin(string $table, Closure|string|null $first = null, string|null $operator = null, string|null $second = null)
Добавить условие "внешнего соединения" в запрос.
void mergeWheres(array $wheres, array $bindings)
Объединить массив условий и значений.
$this where(string|array|Closure $column, mixed $operator = null, mixed $value = null, string $boolean = 'and')
Добавить базовое условие к запросу.
protected $this addArrayOfWheres(array $column, string $boolean, string $method = 'where')
Добавить массив условий where в запрос.
array prepareValueAndOperator(string $value, string $operator, bool $useDefault = false)
Подготовить значение и оператор для условия where.
protected bool invalidOperatorAndValue(string $operator, mixed $value)
Определить, является ли данная комбинация оператора и значения допустимой.
Предотвращает использование Null-значений с недопустимыми операторами.
protected bool invalidOperator(string $operator)
Определить, поддерживается ли данный оператор.
Builder|Builder orWhere(string|array|Closure $column, mixed $operator = null, mixed $value = null)
Добавить условие "или где" к запросу.
Builder|Builder whereColumn(string|array $first, string|null $operator = null, string|null $second = null, string|null $boolean = 'and')
Добавить условие "где" для сравнения двух столбцов в запрос.
Builder|Builder orWhereColumn(string|array $first, string|null $operator = null, string|null $second = null)
Добавить условие "или где" сравнивая две колонки в запросе.
$this whereRaw(string $sql, mixed $bindings = [], string $boolean = 'and')
Добавить сырое условие "где" в запрос.
Builder|Builder orWhereRaw(string $sql, mixed $bindings = [])
Добавить сырое условие "или где" в запрос.
$this whereIn(string $column, mixed $values, string $boolean = 'and', bool $not = false)
Добавить условие "where in" к запросу.
Builder|Builder whereNotIn(string $column, mixed $values, string $boolean = 'and')
Добавить условие "where not in" к запросу.
protected $this whereInSub(string $column, Closure $callback, string $boolean, bool $not)
Добавить условие "в" с подзапросом в запрос.
protected $this whereInExistingQuery(string $column, Builder|Builder $query, string $boolean, bool $not)
Добавить внешний подзапрос в запрос.
$this whereNull(string $column, string $boolean = 'and', bool $not = false)
Добавить условие "где пусто" к запросу.
Builder|Builder whereNotNull(string $column, string $boolean = 'and')
Добавить условие "где не пусто" к запросу.
$this whereBetween(string $column, array $values, string $boolean = 'and', bool $not = false)
Добавить условие "между" к запросу.
Builder|Builder orWhereBetween(string $column, array $values)
Добавить условие or where between в запрос.
Builder|Builder whereNotBetween(string $column, array $values, string $boolean = 'and')
Добавить условие where not between в запрос.
Builder|Builder orWhereNotBetween(string $column, array $values)
Добавить условие or where not between в запрос.
Builder|Builder whereDate(string $column, string $operator, DateTimeInterface|string $value = null, string $boolean = 'and')
Добавить условие "где дата" к запросу.
Builder|Builder orWhereDate(string $column, string $operator, DateTimeInterface|string $value = null)
Добавить условие "или где дата" к запросу.
Builder|Builder whereTime(string $column, string $operator, DateTimeInterface|string $value = null, string $boolean = 'and')
Добавить условие "где время" к запросу.
Builder|Builder orWhereTime(string $column, string $operator, DateTimeInterface|string $value = null)
Добавить условие "или где время" в запрос.
Builder|Builder whereDay(string $column, string $operator, DateTimeInterface|string $value = null, string $boolean = 'and')
Добавить условие "где день" в запрос.
Builder|Builder orWhereDay(string $column, string $operator, DateTimeInterface|string $value = null)
Добавить условие "или где день" к запросу.
Builder|Builder whereMonth(string $column, string $operator, DateTimeInterface|string $value = null, string $boolean = 'and')
Добавить условие "где месяц" к запросу.
Builder|Builder orWhereMonth(string $column, string $operator, DateTimeInterface|string $value = null)
Добавить условие "или где месяц" к запросу.
Builder|Builder whereYear(string $column, string $operator, DateTimeInterface|string|int $value = null, string $boolean = 'and')
Добавить условие "где год" к запросу.
Builder|Builder orWhereYear(string $column, string $operator, DateTimeInterface|string|int $value = null)
Добавить условие "или где год" к запросу.
protected $this addDateBasedWhere(string $type, string $column, string $operator, mixed $value, string $boolean = 'and')
Добавить условие, основанное на дате (год, месяц, день, время), к запросу.
Builder|Builder whereNested(Closure $callback, string $boolean = 'and')
Добавить вложенное условие where к запросу.
Builder дляВложенногоУсловий()
Создать новый экземпляр запроса для вложенного условия.
$this добавитьВложенныйЗапрос(Builder|Builder $query, string $boolean = 'and')
Добавить другой генератор запросов как вложенное условие к генератору запросов.
protected $this гдеПодзапрос(string $column, string $operator, Closure $callback, string $boolean)
Добавить полный подзапрос к запросу.
$this гдеСуществует(Closure $callback, string $boolean = 'and', bool $not = false)
Добавить условие exists к запросу.
Builder|Builder orWhereExists(Closure $callback, bool $not = false)
Добавить условие или существует для запроса.
Builder|Builder whereNotExists(Closure $callback, string $boolean = 'and')
Добавить условие, где не существует для запроса.
Builder|Builder orWhereNotExists(Closure $callback)
Добавить условие, где не существует для запроса.
$this addWhereExistsQuery(Builder $query, string $boolean = 'and', bool $not = false)
Добавить условие exists к запросу.
$this whereRowValues(array $columns, string $operator, array $values, string $boolean = 'and')
Добавляет условие where с использованием значений строк.
$this orWhereRowValues(array $columns, string $operator, array $values)
Добавляет условие or where с использованием значений строк.
$this whereJsonContains(string $column, mixed $value, string $boolean = 'and', bool $not = false)
Добавить условие "where JSON содержит" к запросу.
$this orWhereJsonContains(string $column, mixed $value)
Добавить условие «или где JSON содержит» к запросу.
$this whereJsonDoesntContain(string $column, mixed $value, string $boolean = 'and')
Добавить условие «где JSON не содержит» к запросу.
$this orWhereJsonDoesntContain(string $column, mixed $value)
Добавить условие «или где JSON не содержит» к запросу.
$this whereJsonLength(string $column, mixed $operator, mixed $value = null, string $boolean = 'and')
Добавить условие «длина JSON» к запросу.
$this orWhereJsonLength(string $column, mixed $operator, mixed $value = null)
Добавить условие "или где длина JSON" к запросу.
$this dynamicWhere(string $method, string $parameters)
Обрабатывает динамические условия "где" для запроса.
protected void addDynamic(string $segment, string $connector, array $parameters, int $index)
Добавить одно динамическое условие where в запрос.
$this groupBy(array ...$groups)
Добавить условие "группировать по" в запрос.
$this having(string $column, string|null $operator = null, string|null $value = null, string $boolean = 'and')
Добавить условие "having" к запросу.
Builder|Builder orHaving(string $column, string|null $operator = null, string|null $value = null)
Добавить условие "or having" к запросу.
$this havingRaw(string $sql, array $bindings = [], string $boolean = 'and')
Добавить сырое условие "having" к запросу.
Builder|Builder orHavingRaw(string $sql, array $bindings = [])
Добавить условие orHaving или raw условие к запросу.
$this orderBy(string $column, string $direction = 'asc')
Добавить условие "order by" к запросу.
$this orderByDesc(string $column)
Добавить условие сортировки по убыванию ("order by desc") к запросу.
Builder|Builder latest(string $column = 'created_at')
Добавить условие сортировки по полю времени к запросу.
Builder|Builder oldest(string $column = 'created_at')
Добавить условие сортировки по отметке времени в запрос.
$this inRandomOrder(string $seed = '')
Расположить результаты запроса в случайном порядке.
$this orderByRaw(string $sql, array $bindings = [])
Добавить условие сортировки с необработанным SQL-кодом к запросу.
$this offset(int $value)
Установить значение "смещения" запроса.
$this limit(int $value)
Установить значение "лимита" запроса.
Builder|Builder forPage(int $page, int $perPage = 15)
Установить лимит и смещение для заданной страницы.
Builder|Builder forPageAfterId(int $perPage = 15, int|null $lastId = 0, string $column = 'id')
Ограничить запрос следующей "страницей" результатов после заданного ID.
protected array removeExistingOrdersFor(string $column)
Получить массив со всеми заказами, у которых удален заданный столбец.
Builder|Builder union(Builder|Closure $query, bool $all = false)
Добавить оператор объединения в запрос.
$this lock(string|bool $value = true)
Заблокировать выбранные строки в таблице.
Builder lockForUpdate()
Заблокировать выбранные строки в таблице для обновления.
Builder sharedLock()
Заблокировать выбранные строки в таблице с совместным доступом.
string toSql()
Получить SQL-представление запроса.
mixed|Builder find(int $id, array $columns = ['*'])
Выполнить запрос для получения одной записи по ID.
mixed value(string $column)
Получить значение одного столбца из первого результата запроса.
Коллекция get(array $columns = ['*'])
Выполнить запрос как операцию "выбрать".
protected array runSelect()
Выполнить запрос как операцию "выбрать" к соединению.
LengthAwarePaginator paginate(int $perPage = 15, array $columns = ['*'], string $pageName = 'page', int|null $page = null)
Разбить заданный запрос на страницы с помощью простого пагинатора.
Paginator simplePaginate(int $perPage = 15, array $columns = ['*'], string $pageName = 'page', int|null $page = null)
Получить пагинатор, поддерживающий только простые ссылки «Далее» и «Назад».
Это более эффективно для больших наборов данных и т.д.
int getCountForPagination(array $columns = ['*'])
Получить количество всех записей для пагинатора.
protected array runPaginationCountQuery(array $columns = ['*'])
Выполнить запрос подсчёта страниц.
protected array withoutSelectAliases(array $columns)
Удалить псевдонимы столбцов, так как они нарушают запросы подсчёта.
Генератор cursor()
Получить генератор для данного запроса.
bool chunkById(int $count, callable $callback, string $column = 'id', string|null $alias = null)
Разбить результаты запроса на части по сравнимым числовым идентификаторам.
protected void enforceOrderBy()
Выбросить исключение, если в запросе нет предложения orderBy.
Collection pluck(string $column, string|null $key = null)
Получить массив с значениями заданного столбца.
protected string|null stripTableForPluck(string $column)
Удалить имя таблицы или псевдоним из идентификатора столбца.
protected Collection pluckFromObjectColumn(array $queryResult, string $column, string $key)
Извлечь значения столбца из строк, представленных как объекты.
protected Collection pluckFromArrayColumn(array $queryResult, string $column, string $key)
Извлечь значения столбца из строк, представленных как массивы.
string implode(string $column, string $glue = '')
Объединить значения заданного столбца в строку.
bool exists()
Определить, существуют ли строки для текущего запроса.
bool doesntExist()
Определить, не существуют ли строки для текущего запроса.
int count(string $columns = '*')
Получить результат "счёт" запроса.
mixed min(string $column)
Получить минимальное значение заданного столбца.
mixed max(string $column)
Получить максимальное значение заданного столбца.
mixed sum(string $column)
Получить сумму значений заданного столбца.
mixed avg(string $column)
Получить среднее значение значений заданного столбца.
mixed average(string $column)
Псевдоним для метода "avg".
mixed aggregate(string $function, array $columns = ['*'])
Выполнить агрегатную функцию на базе данных.
float|int numericAggregate(string $function, array $columns = ['*'])
Выполнить числовую агрегатную функцию на базе данных.
protected $this setAggregate(string $function, array $columns)
Установить агрегированное свойство без выполнения запроса.
protected mixed onceWithColumns(array $columns, callable $callback)
Выполнить указанный обратный вызов, выбирая заданные столбцы.
После выполнения обратного вызова столбцы сбрасываются до исходного значения.
bool insert(array $values)
Вставить новую запись в базу данных.
int insertGetId(array $values, string|null $sequence = null)
Вставить новую запись и получить значение первичного ключа.
int update(array $values)
Обновить запись в базе данных.
bool updateOrInsert(array $attributes, array $values = [])
Вставить или обновить запись, соответствующую атрибутам, и заполнить её значениями.
int increment(string $column, float|int $amount = 1, array $extra = [])
Увеличить значение столбца на заданную величину.
int decrement(string $column, float|int $amount = 1, array $extra = [])
Уменьшить значение столбца на заданную величину.
int delete(mixed $id = null)
Удалить запись из базы данных.
void truncate()
Выполнить операцию truncate для таблицы.
Блок-схема запроса newQuery()
Получить новый экземпляр генератора запросов.
protected Блок-схема запроса forSubQuery()
Создать новый экземпляр запроса для подзапроса.
Выражение raw(mixed $value)
Создать выражение для базы данных.
массив getBindings()
Получить текущие привязки значений запроса в плоском массиве.
массив getRawBindings()
Получить исходный массив привязок.
$this setBindings(array $bindings, string $type = 'where')
Установить связывания в билдере запроса.
$this addBinding(mixed $value, string $type = 'where')
Добавить связывание в запрос.
$this mergeBindings(Builder $query)
Объединить массив связываний в наши связывания.
protected array cleanBindings(array $bindings)
Удалить все выражения из списка связываний.
ConnectionInterface getConnection()
Получить экземпляр подключения к базе данных.
Processor getProcessor()
Получить экземпляр обработчика запросов к базе данных.
Grammar getGrammar()
Получить экземпляр синтаксического анализатора запросов.
$this useWritePdo()
Использовать write pdo для запроса.
Builder cloneWithout(array $properties)
Создать копию запроса без указанных свойств.
Builder cloneWithoutBindings(array $except)
Клонировать запрос без указанных значений связывания.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/5.7/Illuminate/Database/Query/Builder.html