JoinClause
class JoinClause extends Builder (View source)
Свойства
| 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) Разбить результаты запроса на куски. | from BuildsQueries |
| bool | each(callable $callback, int $count = 1000) Выполнить обратный вызов над каждым элементом, разбивая на куски. | from BuildsQueries |
| bool | chunkById(int $count, callable $callback, string|null $column = null, string|null $alias = null) Разбить результаты запроса на куски по сравниванию идентификаторов. | from BuildsQueries |
| bool | eachById(callable $callback, int $count = 1000, string|null $column = null, string|null $alias = null) Выполнить обратный вызов над каждым элементом, разбивая на куски по идентификатору. | from BuildsQueries |
| Model|object|BuildsQueries|null | first(array|string $columns = ['*']) Выполнить запрос и получить первый результат. | from BuildsQueries |
| mixed|$this | when(mixed $value, callable $callback, callable|null $default = null) Применить изменения запроса обратного вызова, если заданное "значение" истинно. | from BuildsQueries |
| $this | tap(callable $callback) Передать запрос в заданный обратный вызов. | from BuildsQueries |
| mixed|$this | unless(mixed $value, callable $callback, callable|null $default = null) Применить изменения запроса обратного вызова, если заданное "значение" ложно. | from 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, bool $replace = true)
Смешать другой объект в класс. | from Macroable |
| static bool | hasMacro(string $name)
Проверяет, зарегистрирован ли макрос. | from Macroable |
| static mixed | __callStatic(string $method, array $parameters)
Динамически обрабатывает вызовы класса. | from Macroable |
| mixed | __call(string $method, array $parameters)
Динамически обрабатывает вызовы класса. | from Macroable |
| void | __construct(Builder $parentQuery, string $type, string $table)
Создать новый экземпляр условия объединения. | |
| $this | select(array|mixed $columns = ['*'])
Установить столбцы для выбора. | from Builder |
| Builder|Builder | selectSub(Closure|$this|string $query, string $as)
Добавить подзапрос в выражение запроса. | from Builder |
| Builder|Builder | selectRaw(string $expression, array $bindings = [])
Добавить новое выражение "сырого" выбора в запрос. | from Builder |
| Builder|Builder | fromSub(Closure|Builder|string $query, string $as)
Выполняет запрос «from» из подзапроса. | from Builder |
| Builder|Builder | fromRaw(string $expression, mixed $bindings = [])
Добавить в запрос условие «from» с помощью сырой строки. | from Builder |
| array | createSub(Closure|Builder|string $query)
Создаёт подзапрос и анализирует его. | from Builder |
| array | parseSub(mixed $query)
Анализирует подзапрос для преобразования в SQL и получения значений. | from Builder |
| $this | addSelect(array|mixed $column)
Добавить новый столбец выбора в запрос. | from Builder |
| $this | distinct()
Выполнить запрос, возвращая только уникальные результаты. | from Builder |
| $this | from(Closure|Builder|string $table, string|null $as = null)
Установите таблицу, на которую нацелен запрос. | from Builder |
| $this | join(string $table, Closure|string $first, string|null $operator = null, string|null $second = null, string $type = 'inner', bool $where = false)
Добавьте условие объединения в запрос. | from Builder |
| Builder|Builder | joinWhere(string $table, Closure|string $first, string $operator, string $second, string $type = 'inner')
Добавьте условие «объединение где» в запрос. | from Builder |
| 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)
Добавьте условие объединения подзапроса в запрос. | from Builder |
| Builder|Builder | leftJoin(string $table, Closure|string $first, string|null $operator = null, string|null $second = null)
Добавьте левое объединение в запрос. | from Builder |
| Builder|Builder | leftJoinWhere(string $table, Closure|string $first, string $operator, string $second)
Добавьте условие «левое объединение где» в запрос. | from Builder |
| Builder|Builder | leftJoinSub(Closure|Builder|string $query, string $as, Closure|string $first, string|null $operator = null, string|null $second = null)
Добавьте левое объединение подзапроса в запрос. | from Builder |
| Builder|Builder | rightJoin(string $table, Closure|string $first, string|null $operator = null, string|null $second = null)
Добавьте правое объединение в запрос. | from Builder |
| Builder|Builder | rightJoinWhere(string $table, Closure|string $first, string $operator, string $second)
Добавьте условие «правое объединение где» в запрос. | from Builder |
| Builder|Builder | rightJoinSub(Closure|Builder|string $query, string $as, Closure|string $first, string|null $operator = null, string|null $second = null)
Добавить подзапрос правого соединения к запросу. | из Builder |
| Builder|Builder | crossJoin(string $table, Closure|string|null $first = null, string|null $operator = null, string|null $second = null)
Добавить в запрос условие "cross join". | из 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 |
| Builder|Builder | orWhere(Closure|string|array $column, mixed $operator = null, mixed $value = null)
Добавить условие "or where" в запрос. | из Builder |
| Builder|Builder | whereColumn(string|array $first, string|null $operator = null, string|null $second = null, string|null $boolean = 'and')
Добавить условие "where" для сравнения двух столбцов в запрос. | из Builder |
| Билдер|Билдер | orWhereColumn(string|array $first, string|null $operator = null, string|null $second = null)
Добавить условие «или где» сравнивая две колонки к запросу. | из Билдера |
| $this | whereRaw(string $sql, mixed $bindings = [], string $boolean = 'and')
Добавить сырое условие «где» к запросу. | из Билдера |
| Билдер|Билдер | orWhereRaw(string $sql, mixed $bindings = [])
Добавить сырое условие «или где» к запросу. | из Билдера |
| $this | whereIn(string $column, mixed $values, string $boolean = 'and', bool $not = false)
Добавить условие «где в» к запросу. | из Билдера |
| Билдер|Билдер | orWhereIn(string $column, mixed $values)
Добавить условие «или где в» к запросу. | из Билдера |
| Билдер|Билдер | whereNotIn(string $column, mixed $values, string $boolean = 'and')
Добавить условие «где не в» к запросу. | из Билдера |
| Билдер|Билдер | orWhereNotIn(string $column, mixed $values)
Добавить условие «или где не в» к запросу. | из Билдера |
| $this | whereIntegerInRaw(string $column, Arrayable|array $values, string $boolean = 'and', bool $not = false)
Добавить условие «где в сырое» для целочисленных значений в запрос. | из Билдера |
| $this | whereIntegerNotInRaw(string $column, Arrayable|array $values, string $boolean = 'and')
Добавить условие «где не в сырое» для целочисленных значений в запрос. | из Билдера |
| $this | whereNull(string|array $columns, string $boolean = 'and', bool $not = false)
Добавить условие «где null» в запрос. | из Билдера |
| Билдер|Билдер | orWhereNull(string $column)
Добавить условие «или где null» к запросу. | из Билдера |
| Билдер|Билдер | whereNotNull(string|array $columns, string $boolean = 'and')
Добавить условие «где не null» к запросу. | из Билдера |
| $this | whereBetween(string $column, array $values, string $boolean = 'and', bool $not = false)
Добавить условие между значениями в запрос. | из Builder |
| Builder|Builder | orWhereBetween(string $column, array $values)
Добавить условие «или между значениями» в запрос. | из Builder |
| Builder|Builder | whereNotBetween(string $column, array $values, string $boolean = 'and')
Добавить условие «не между значениями» в запрос. | из Builder |
| Builder|Builder | orWhereNotBetween(string $column, array $values)
Добавить условие «или не между значениями» в запрос. | из Builder |
| Builder|Builder | orWhereNotNull(string $column)
Добавить условие «или не равно null» в запрос. | из Builder |
| Builder|Builder | whereDate(string $column, string $operator, DateTimeInterface|string|null $value = null, string $boolean = 'and')
Добавить условие «где дата» в запрос. | из Builder |
| Builder|Builder | orWhereDate(string $column, string $operator, DateTimeInterface|string|null $value = null)
Добавить условие «или где дата» в запрос. | из Builder |
| Builder|Builder | whereTime(string $column, string $operator, DateTimeInterface|string|null $value = null, string $boolean = 'and')
Добавить условие «где время» в запрос. | из Builder |
| Builder|Builder | orWhereTime(string $column, string $operator, DateTimeInterface|string|null $value = null)
Добавить условие «или где время» в запрос. | из Builder |
| Builder|Builder | whereDay(string $column, string $operator, DateTimeInterface|string|null $value = null, string $boolean = 'and')
Добавить условие «где день» в запрос. | из Builder |
| Builder|Builder | orWhereDay(string $column, string $operator, DateTimeInterface|string|null $value = null)
Добавить условие "или где день" к запросу. | from Builder |
| Builder|Builder | whereMonth(string $column, string $operator, DateTimeInterface|string|null $value = null, string $boolean = 'and')
Добавить условие "где месяц" к запросу. | from Builder |
| Builder|Builder | orWhereMonth(string $column, string $operator, DateTimeInterface|string|null $value = null)
Добавить условие "или где месяц" к запросу. | from Builder |
| Builder|Builder | whereYear(string $column, string $operator, DateTimeInterface|string|int|null $value = null, string $boolean = 'and')
Добавить условие "где год" к запросу. | from Builder |
| Builder|Builder | orWhereYear(string $column, string $operator, DateTimeInterface|string|int|null $value = null)
Добавить условие "или где год" к запросу. | from Builder |
| $this | addDateBasedWhere(string $type, string $column, string $operator, mixed $value, string $boolean = 'and')
Добавить условие, основанное на дате (год, месяц, день, время), в запрос. | from Builder |
| Builder|Builder | whereNested(Closure $callback, string $boolean = 'and')
Добавить вложенное условие "где" в запрос. | from Builder |
| Builder | forNestedWhere()
Создать новый экземпляр запроса для вложенного условия "где". | from Builder |
| $this | addNestedWhereQuery(Builder|Builder $query, string $boolean = 'and')
Добавить другой билдер запроса как вложенное условие "где" к билдеру запроса. | from Builder |
| $this | whereSub(string $column, string $operator, Closure $callback, string $boolean)
Добавить полную подзапросную часть в запрос. | from Builder |
| $this | whereExists(Closure $callback, string $boolean = 'and', bool $not = false)
Добавить условие существования в запрос. | из Builder |
| Builder|Builder | orWhereExists(Closure $callback, bool $not = false)
Добавить условие «или существует» в запрос. | из Builder |
| Builder|Builder | whereNotExists(Closure $callback, string $boolean = 'and')
Добавить условие «где не существует» в запрос. | из Builder |
| Builder|Builder | 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)
Добавляет условие «или где значения строки». | из Builder |
| $this | whereJsonContains(string $column, mixed $value, string $boolean = 'and', bool $not = false)
Добавить условие «где JSON содержит» в запрос. | из Builder |
| $this | orWhereJsonContains(string $column, mixed $value)
Добавить условие «или где JSON содержит» в запрос. | из Builder |
| $this | whereJsonDoesntContain(string $column, mixed $value, string $boolean = 'and')
Добавить условие «где JSON не содержит» в запрос. | из Builder |
| $this | orWhereJsonDoesntContain(string $column, mixed $value)
Добавить условие «или где JSON не содержит» в запрос. | из Builder |
| $this | whereJsonLength(string $column, mixed $operator, mixed $value = null, string $boolean = 'and')
Добавить условие «где длина JSON» в запрос. | из Builder |
| $this | orWhereJsonLength(string $column, mixed $operator, mixed $value = null)
Добавить условие «или где длина 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 = [])
Добавляет необработанное условие «group by» к запросу. | из Builder |
| $this | having(string $column, string|null $operator = null, string|null $value = null, string $boolean = 'and')
Добавляет условие «having» к запросу. | из Builder |
| Builder|Builder | orHaving(string $column, string|null $operator = null, string|null $value = null)
Добавляет условие «or having» к запросу. | из Builder |
| Builder|Builder | 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 |
| Builder|Builder | orHavingRaw(string $sql, array $bindings = [])
Добавляет необработанное условие «or having» к запросу. | из Builder |
| $this | orderBy(Closure|Builder|Expression|string $column, string $direction = 'asc')
Добавляет условие «order by» к запросу. | из Builder |
| $this | orderByDesc(string $column)
Добавляет условие «order by» по убыванию к запросу. | из Builder |
| Builder|Builder | latest(string $column = 'created_at')
Добавляет условие «order by» для временной метки к запросу. | из Builder |
| Builder|Builder | oldest(string $column = 'created_at')
Добавляет условие «order by» для временной метки к запросу. | из Builder |
| $this | inRandomOrder(string $seed = '')
Разместите результаты запроса в случайном порядке. | from Builder |
| $this | orderByRaw(string $sql, array $bindings = [])
Добавьте в запрос условие сортировки "order by" в сыром виде. | from Builder |
| Builder|Builder | skip(int $value)
Псевдоним для установки значения "offset" запроса. | from Builder |
| $this | offset(int $value)
Установите значение "offset" запроса. | from Builder |
| Builder|Builder | take(int $value)
Псевдоним для установки значения "limit" запроса. | from Builder |
| $this | limit(int $value)
Установите значение "limit" запроса. | from Builder |
| Builder|Builder | forPage(int $page, int $perPage = 15)
Установите limit и offset для заданной страницы. | from Builder |
| Builder|Builder | forPageBeforeId(int $perPage = 15, int|null $lastId = 0, string $column = 'id')
Ограничьте запрос предыдущей "страницей" результатов до заданного ID. | from Builder |
| Builder|Builder | forPageAfterId(int $perPage = 15, int|null $lastId = 0, string $column = 'id')
Ограничьте запрос следующей "страницей" результатов после заданного ID. | from Builder |
| array | removeExistingOrdersFor(string $column)
Получить массив со всеми заказами, в которых заданный столбец удален. | from Builder |
| Builder|Builder | union(Builder|Closure $query, bool $all = false)
Добавить оператор union к запросу. | from Builder |
| Builder|Builder | unionAll(Builder|Closure $query)
Добавить оператор union all к запросу. | from Builder |
| $this | lock(string|bool $value = true)
Заблокировать выбранные строки в таблице. | from Builder |
| Билдер | lockForUpdate()
Блокировать выбранные строки в таблице для обновления. | из Билдер |
| Билдер | sharedLock()
Заблокировать выбранные строки в таблице для совместного доступа. | из Билдер |
| строка | toSql()
Получить SQL-представление запроса. | из Билдер |
| смешанный|Билдер | find(int|string $id, array $columns = ['*'])
Выполнить запрос для одной записи по идентификатору. | из Билдер |
| смешанный | value(string $column)
Получить значение единственного столбца из первого результата запроса. | из Билдер |
| Коллекция | get(array|string $columns = ['*'])
Выполнить запрос как оператор «выбрать». | из Билдер |
| массив | runSelect()
Выполнить запрос как оператор «выбрать» к подключению. | из Билдер |
| Страница с информацией о количестве элементов | paginate(int $perPage = 15, array $columns = ['*'], string $pageName = 'page', int|null $page = null)
Разбить запрос на страницы с использованием простого пагинатора. | из Билдер |
| Пагинатор | simplePaginate(int $perPage = 15, array $columns = ['*'], string $pageName = 'page', int|null $page = null)
Получить пагинатор, поддерживающий только простые ссылки «следующая» и «предыдущая». | из Билдер |
| целое число | getCountForPagination(array $columns = ['*'])
Получить количество всех записей для пагинатора. | из Билдер |
| массив | runPaginationCountQuery(array $columns = ['*'])
Выполнить запрос для подсчета элементов на страницах. | из Билдер |
| массив | withoutSelectAliases(array $columns)
Удалить псевдонимы столбцов, так как они нарушают запросы подсчета. | из Билдер |
| Ленивая коллекция | cursor()
Получить ленивую коллекцию для данного запроса. | из Билдер |
| пусто | enforceOrderBy()
Выбросить исключение, если в запросе нет условия orderBy. | из Билдер |
| Коллекция | pluck(string $column, string|null $key = null)
Получить массив со значениями заданного столбца. | из Построителя |
| string|null | stripTableForPluck(string $column)
Удалить имя или псевдоним таблицы из идентификатора столбца. | из Построителя |
| Коллекция | pluckFromObjectColumn(array $queryResult, string $column, string $key)
Извлечь значения столбца из строк, представленных как объекты. | из Построителя |
| Коллекция | 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 = '*')
Получить результат "подсчета" запроса. | из Построителя |
| 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 = ['*'])
Выполнить агрегативную функцию в базе данных. | from Builder |
| float|int | numericAggregate(string $function, array $columns = ['*'])
Выполнить числовую агрегативную функцию в базе данных. | from Builder |
| $this | setAggregate(string $function, array $columns)
Установить свойство агрегирования без запуска запроса. | from Builder |
| mixed | onceWithColumns(array $columns, callable $callback)
Выполнить заданный обратный вызов, выбрав заданные столбцы. | from Builder |
| bool | insert(array $values)
Вставить новую запись в базу данных. | from Builder |
| int | insertOrIgnore(array $values)
Вставить новую запись в базу данных, игнорируя ошибки. | from Builder |
| int | insertGetId(array $values, string|null $sequence = null)
Вставить новую запись и получить значение первичного ключа. | from Builder |
| int | insertUsing(array $columns, Closure| Builder | string $query)
Вставить новые записи в таблицу с использованием подзапроса. | from Builder |
| int | update(array $values)
Обновить запись в базе данных. | from Builder |
| bool | updateOrInsert(array $attributes, array $values = [])
Вставить или обновить запись, соответствующую атрибутам, и заполнить её значениями. | from Builder |
| int | increment(string $column, float|int $amount = 1, array $extra = [])
Увеличить значение столбца на заданную величину. | from Builder |
| int | decrement(string $column, float|int $amount = 1, array $extra = [])
Уменьшить значение столбца на заданную величину. | from Builder |
| int | delete(mixed $id = null)
Удалить запись из базы данных. | from Builder |
| void | truncate()
Выполнить операцию обнуления таблицы. | from Builder |
| Builder | newQuery()
Получить новую инстанцию билдера для объединения. | |
| Builder | forSubQuery()
Создать новый экземпляр запроса для подзапроса. |
| Expression | raw(mixed $value)
Создать выражение базы данных в сыром виде. | from Builder |
| массив | getBindings()
Получить текущие привязки значений запроса в плоском массиве. | from Builder |
| массив | getRawBindings()
Получить сырой массив привязок. | from Builder |
| $this | setBindings(array $bindings, string $type = 'where')
Установить привязки в билдере запроса. | from Builder |
| $this | addBinding(mixed $value, string $type = 'where')
Добавить привязку к запросу. | from Builder |
| $this | mergeBindings(Builder $query)
Слить массив привязок в наши привязки. | from Builder |
| массив | cleanBindings(array $bindings)
Удалить все выражения из списка привязок. | from Builder |
| mixed | flattenValue(mixed $value)
Получить скалярное значение типа из входных данных неизвестного типа. | from Builder |
| строка | defaultKeyName()
Получить имя ключа по умолчанию таблицы. | from Builder |
| ConnectionInterface | getConnection()
Получить экземпляр соединения с базой данных. | from Builder |
| Processor | getProcessor()
Получить экземпляр обработчика запросов базы данных. | from Builder |
| Grammar | getGrammar()
Получить экземпляр грамматики запроса. | from Builder |
| $this | useWritePdo()
Использовать write pdo для запроса. | from Builder |
| bool | isQueryable(mixed $value)
Определить, является ли значение экземпляром билдера запросов или замыканием. | from Builder |
| Builder | cloneWithout(array $properties)
Клонировать запрос без указанных свойств. | from Builder |
| Билдер | 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)
Разбить результаты запроса на части по сравнением идентификаторов.
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)
Выбросить исключение BadMethodCallException для данного метода.
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 = ['*'])
Установить столбцы для выбора.
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 с использованием необработанного SQL.
protected массив 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)
Добавить условие соединения к запросу.
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, Closure|string $first, string $operator, string $second)
Добавить условие «соединение где» к запросу.
Builder|Builder leftJoinSub(Closure|Builder|string $query, string $as, Closure|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, Closure|string $first, string $operator, string $second)
Добавить условие «правое соединение с проверкой» к запросу.
Builder|Builder rightJoinSub(Closure|Builder|string $query, string $as, Closure|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)
Добавить условие «перекрёстного соединения» к запросу.
protected JoinClause newJoinClause(Builder $parentQuery, string $type, string $table)
Получить новую секцию соединения.
void mergeWheres(array $wheres, array $bindings)
Объединить массив условий и параметров.
$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)
Определить, поддерживается ли данный оператор.
Builder|Builder orWhere(Closure|string|array $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)
Добавить условие «или где» (or where), сравнивая два столбца в запросе.
$this whereRaw(string $sql, mixed $bindings = [], string $boolean = 'and')
Добавить необработанное условие where в запрос.
Builder|Builder orWhereRaw(string $sql, mixed $bindings = [])
Добавить необработанное условие «или где» (or where) в запрос.
$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 whereIntegerInRaw(string $column, Arrayable|array $values, string $boolean = 'and', bool $not = false)
Добавить условие "where in raw" для целочисленных значений в запрос.
$this whereIntegerNotInRaw(string $column, Arrayable|array $values, string $boolean = 'and')
Добавить условие "where not in raw" для целочисленных значений в запрос.
$this whereNull(string|array $columns, string $boolean = 'and', bool $not = false)
Добавить условие "where null" в запрос.
Builder|Builder whereNotNull(string|array $columns, string $boolean = 'and')
Добавить условие "where not null" в запрос.
$this whereBetween(string $column, array $values, string $boolean = 'and', bool $not = false)
Добавить условие where between в запрос.
Builder|Builder orWhereBetween(string $column, array $values)
Добавить условие or where between в запрос.
Builder|Builder whereNotBetween(string $column, array $values, string $boolean = 'and')
Добавить условие «не между» к запросу.
Builder|Builder orWhereNotBetween(string $column, array $values)
Добавить условие «или не между» к запросу.
Builder|Builder whereDate(string $column, string $operator, DateTimeInterface|string|null $value = null, string $boolean = 'and')
Добавить условие «где дата» к запросу.
Builder|Builder orWhereDate(string $column, string $operator, DateTimeInterface|string|null $value = null)
Добавить условие «или где дата» к запросу.
Builder|Builder whereTime(string $column, string $operator, DateTimeInterface|string|null $value = null, string $boolean = 'and')
Добавить условие «where time» в запрос.
Builder|Builder orWhereTime(string $column, string $operator, DateTimeInterface|string|null $value = null)
Добавить условие «or where time» в запрос.
Builder|Builder whereDay(string $column, string $operator, DateTimeInterface|string|null $value = null, string $boolean = 'and')
Добавить условие «where day» в запрос.
Builder|Builder orWhereDay(string $column, string $operator, DateTimeInterface|string|null $value = null)
Добавить условие «or where day» в запрос.
Builder|Builder whereMonth(string $column, string $operator, DateTimeInterface|string|null $value = null, string $boolean = 'and')
Добавить условие «where month» в запрос.
Builder|Builder orWhereMonth(string $column, string $operator, DateTimeInterface|string|null $value = null)
Добавить условие "или где месяц" к запросу.
Builder|Builder whereYear(string $column, string $operator, DateTimeInterface|string|int|null $value = null, string $boolean = 'and')
Добавить условие "где год" к запросу.
Builder|Builder 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')
Добавить условие, основанное на дате (год, месяц, день, время), к запросу.
Builder|Builder whereNested(Closure $callback, string $boolean = 'and')
Добавить вложенное условие "где" к запросу.
Builder forNestedWhere()
Создать новый экземпляр запроса для вложенного условия.
$this addNestedWhereQuery(Builder|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 к запросу.
Builder|Builder orWhereExists(Closure $callback, bool $not = false)
Добавить условие or exists к запросу.
Builder|Builder whereNotExists(Closure $callback, string $boolean = 'and')
Добавить условие 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)
Добавить условие «или где длина JSON» к запросу.
$this dynamicWhere(string $method, array $parameters)
Обрабатывает динамические условия «где» для запроса.
protected void addDynamic(string $segment, string $connector, array $parameters, int $index)
Добавить одно динамическое условие «где» в запрос.
$this groupBy(array|string ...$groups)
Добавить условие «группировать по» в запрос.
$this groupByRaw(string $sql, array $bindings = [])
Добавить сырое условие «группировать по» в запрос.
$this having(string $column, string|null $operator = null, string|null $value = null, string $boolean = 'and')
Добавить условие «иметь» в запрос.
Builder|Builder orHaving(string $column, string|null $operator = null, string|null $value = null)
Добавить условие «или иметь» в запрос.
Builder|Builder havingBetween(string $column, array $values, string $boolean = 'and', bool $not = false)
Добавить условие «иметь между» в запрос.
$this havingRaw(string $sql, array $bindings = [], string $boolean = 'and')
Добавить условие having в виде SQL запроса к запросу.
Builder|Builder orHavingRaw(string $sql, array $bindings = [])
Добавить условие or having в виде SQL запроса к запросу.
$this orderBy(Closure|Builder|Expression|string $column, string $direction = 'asc')
Добавить условие сортировки к запросу.
$this orderByDesc(string $column)
Добавить условие сортировки по убыванию к запросу.
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)
Установить значение "offset" запроса.
$this limit(int $value)
Установить значение "limit" запроса.
Builder|Builder forPage(int $page, int $perPage = 15)
Устанавливает лимит и смещение для заданной страницы.
Builder|Builder forPageBeforeId(int $perPage = 15, int|null $lastId = 0, string $column = 'id')
Ограничить запрос предыдущей "страницей" результатов до заданного ID.
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|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 array withoutSelectAliases(array $columns)
Удалить алиасы столбцов, поскольку они нарушат запросы подсчета.
LazyCollection cursor()
Получить ленивую коллекцию для данного запроса.
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()
Определить, не существуют ли строки для текущего запроса.
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()
Получить имя ключа по умолчанию таблицы.
Интерфейс подключения getConnection()
Получить экземпляр подключения к базе данных.
Обработчик getProcessor()
Получить экземпляр обработчика запросов к базе данных.
Грамматика 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)
Добавить условие "или on" к объединению.
protected Builder newParentQuery()
Создать новый экземпляр родительского запроса.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/6.x/Illuminate/Database/Query/JoinClause.html