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