Builder
class Builder (View source)
Свойства
| static protected array | $macros | Зарегистрированные строковые макросы. | from Macroable |
| ConnectionInterface | $connection | Экземпляр подключения к базе данных. | |
| Grammar | $grammar | Экземпляр грамматики запросов к базе данных. | |
| Processor | $processor | Экземпляр постпроцессора запросов к базе данных. | |
| array | $bindings | Текущие значения связей запроса. | |
| array | $aggregate | Функция агрегирования и столбец для выполнения. | |
| array | $columns | Столбцы, которые должны быть возвращены. | |
| bool|array | $distinct | Указывает, возвращает ли запрос различные результаты. | |
| string | $from | Таблица, на которую нацелен запрос. | |
| array | $joins | Соединения таблиц для запроса. | |
| array | $wheres | Условия WHERE для запроса. | |
| array | $groups | Группировки для запроса. | |
| array | $havings | Условия HAVING для запроса. | |
| array | $orders | Сортировки для запроса. | |
| int | $limit | Максимальное количество записей для возврата. | |
| int | $offset | Количество записей, которые нужно пропустить. | |
| array | $unions | Заявления объединения запроса. | |
| int | $unionLimit | Максимальное количество записей объединения для возврата. | |
| int | $unionOffset | Количество записей объединения, которые нужно пропустить. | |
| array | $unionOrders | Сортировки для запроса объединения. | |
| string|bool | $lock | Указывает, используется ли блокировка строк. | |
| array | $operators | Все доступные операторы условий. | |
| bool | $useWritePdo | Использовать ли write pdo для выборки. |
Traits
| BuildsQueries | |
| ForwardsCalls | |
| Macroable |
Methods
| 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) Обработка динамических вызовов метода. | |
| void | __construct(ConnectionInterface $connection, Grammar $grammar = null, Processor $processor = null) Создать новый экземпляр билдера запросов. | |
| $this | select(array|mixed $columns = ['*']) Установить столбцы, которые нужно выбрать. | |
| Builder|Builder | selectSub(Closure|$this|string $query, string $as) Добавить подзапрос к запросу. | |
| Builder|Builder | selectRaw(string $expression, array $bindings = []) Добавить новое выражение «сырого» выбора к запросу. | |
| Builder|Builder | fromSub(Closure|Builder|string $query, string $as) Делает «from», чтобы выборка происходила из подзапроса. | |
| Builder|Builder | fromRaw(string $expression, mixed $bindings = []) Добавить «from»-строку в запрос. | |
| array | createSub(Closure|Builder|string $query) Создает подзапрос и анализирует его. | |
| array | parseSub(mixed $query) Анализировать подзапрос в SQL и параметры. | |
| $this | addSelect(array|mixed $column) Добавить новый столбец выбора в запрос. | |
| $this | distinct() Принудительно вернуть только уникальные результаты. | |
| $this | from(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)
Добавить условие «join where» к запросу. | |
| 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)
Добавить условие «right join where» к запросу. | |
| 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)
Добавить условие «cross join» к запросу. | |
| 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» к запросу. | |
| $this | addArrayOfWheres(array $column, string $boolean, string $method = 'where')
Добавить массив условий к запросу. | |
| array | prepareValueAndOperator(string $value, string $operator, bool $useDefault = false)
Подготовить значение и оператор для условия «where». | |
| bool | invalidOperatorAndValue(string $operator, mixed $value)
Определить, является ли данная комбинация оператора и значения допустимой. | |
| bool | invalidOperator(string $operator)
Определить, поддерживается ли данный оператор. | |
| Builder|Builder | orWhere(Closure|string|array $column, mixed $operator = null, mixed $value = null)
Добавить условие «or where» к запросу. | |
| Builder|Builder | whereColumn(string|array $first, string|null $operator = null, string|null $second = null, string|null $boolean = 'and')
Добавить условие «where», сравнивая две колонки, к запросу. | |
| 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 | orWhereNull(string $column)
Добавить в запрос условие "или null". | |
| Builder|Builder | whereNotNull(string|array $columns, string $boolean = 'and')
Добавить в запрос условие "не null". | |
| $this | whereBetween(string $column, array $values, string $boolean = 'and', bool $not = false)
Добавить в запрос условие "между". | |
| Builder|Builder | orWhereBetween(string $column, array $values)
Добавить в запрос условие "или между". | |
| Builder|Builder | whereNotBetween(string $column, array $values, string $boolean = 'and')
Добавить в запрос условие "не между". | |
| Builder|Builder | orWhereNotBetween(string $column, array $values)
Добавить в запрос условие "или не между". | |
| Builder|Builder | orWhereNotNull(string $column)
Добавить в запрос условие "или не null". | |
| 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')
Добавить в запрос условие "время". | |
| Builder|Builder | orWhereTime(string $column, string $operator, DateTimeInterface|string|null $value = null)
Добавить в запрос условие "или время". | |
| Builder|Builder | whereDay(string $column, string $operator, DateTimeInterface|string|null $value = null, string $boolean = 'and')
Добавить в запрос условие "день". | |
| Builder|Builder | orWhereDay(string $column, string $operator, DateTimeInterface|string|null $value = null)
Добавить в запрос условие "или день". | |
| Builder|Builder | whereMonth(string $column, string $operator, DateTimeInterface|string|null $value = null, string $boolean = 'and')
Добавить в запрос условие "месяц". | |
| 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)
Добавить в запрос условие "или год". | |
| $this | addDateBasedWhere(string $type, string $column, string $operator, mixed $value, string $boolean = 'and')
Добавить в запрос условие на основе даты (год, месяц, день, время). | |
| Builder|Builder | whereNested(Closure $callback, string $boolean = 'and')
Добавить в запрос вложенное условие where. | |
| Builder | forNestedWhere()
Создать новый экземпляр запроса для вложенного условия where. | |
| $this | addNestedWhereQuery(Builder|Builder $query, string $boolean = 'and')
Добавить другой построитель запросов в качестве вложенного where в построитель запросов. | |
| $this | whereSub(string $column, string $operator, Closure $callback, string $boolean)
Добавить полный подзапрос в запрос. | |
| $this | whereExists(Closure $callback, string $boolean = 'and', bool $not = false)
Добавить в запрос условие exists. | |
| Builder|Builder | orWhereExists(Closure $callback, bool $not = false)
Добавить в запрос условие or exists. | |
| Builder|Builder | whereNotExists(Closure $callback, string $boolean = 'and')
Добавить в запрос условие where not exists. | |
| Builder|Builder | orWhereNotExists(Closure $callback)
Добавить в запрос условие or where not exists. | |
| $this | addWhereExistsQuery(Builder $query, string $boolean = 'and', bool $not = false)
Добавить в запрос условие exists. |
| $this | whereRowValues(array $columns, string $operator, array $values, string $boolean = 'and')
Добавляет условие where, используя значения строк. | |
| $this | orWhereRowValues(array $columns, string $operator, array $values)
Добавляет условие or where, используя значения строк. | |
| $this | whereJsonContains(string $column, mixed $value, string $boolean = 'and', bool $not = false)
Добавляет условие "where JSON содержит" к запросу. | |
| $this | orWhereJsonContains(string $column, mixed $value)
Добавляет условие "or where JSON содержит" к запросу. | |
| $this | whereJsonDoesntContain(string $column, mixed $value, string $boolean = 'and')
Добавляет условие "where JSON не содержит" к запросу. | |
| $this | orWhereJsonDoesntContain(string $column, mixed $value)
Добавляет условие "or where JSON не содержит" к запросу. | |
| $this | whereJsonLength(string $column, mixed $operator, mixed $value = null, string $boolean = 'and')
Добавляет условие "where JSON длина" к запросу. | |
| $this | orWhereJsonLength(string $column, mixed $operator, mixed $value = null)
Добавляет условие "or where JSON длина" к запросу. | |
| $this | dynamicWhere(string $method, array $parameters)
Обрабатывает динамические условия "where" для запроса. | |
| void | addDynamic(string $segment, string $connector, array $parameters, int $index)
Добавляет отдельное динамическое условие where в запрос. | |
| $this | groupBy(array|string ...$groups)
Добавляет условие "group by" к запросу. | |
| $this | groupByRaw(string $sql, array $bindings = [])
Добавляет условие groupBy в сыром виде к запросу. | |
| $this | having(string $column, string|null $operator = null, string|null $value = null, string $boolean = 'and')
Добавляет условие "having" к запросу. | |
| Builder|Builder | orHaving(string $column, string|null $operator = null, string|null $value = null)
Добавляет условие "or having" к запросу. | |
| Builder|Builder | havingBetween(string $column, array $values, string $boolean = 'and', bool $not = false)
Добавляет условие "having between" к запросу. | |
| $this | havingRaw(string $sql, array $bindings = [], string $boolean = 'and')
Добавляет условие having в сыром виде к запросу. | |
| Builder|Builder | orHavingRaw(string $sql, array $bindings = [])
Добавляет условие or having в сыром виде к запросу. | |
| $this | orderBy(Closure|Builder|Expression|string $column, string $direction = 'asc')
Добавляет условие "order by" к запросу. | |
| $this | orderByDesc(string $column)
Добавляет условие "order by" по убыванию к запросу. | |
| Builder|Builder | latest(string $column = 'created_at')
Добавляет условие "order by" для временной метки к запросу. | |
| Builder|Builder | oldest(string $column = 'created_at')
Добавляет условие "order by" для временной метки к запросу. | |
| $this | inRandomOrder(string $seed = '')
Располагает результаты запроса в случайном порядке. | |
| $this | orderByRaw(string $sql, array $bindings = [])
Добавляет условие "order by" в сыром виде к запросу. | |
| Builder|Builder | skip(int $value)
Псевдоним для установки значения "offset" запроса. | |
| $this | offset(int $value)
Устанавливает значение "offset" запроса. | |
| Builder|Builder | take(int $value)
Псевдоним для установки значения "limit" запроса. | |
| $this | limit(int $value)
Устанавливает значение "limit" запроса. | |
| Builder|Builder | forPage(int $page, int $perPage = 15)
Устанавливает limit и offset для заданной страницы. | |
| 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. | |
| array | removeExistingOrdersFor(string $column)
Возвращает массив со всеми удаленными заказами со столбцом. | |
| Builder|Builder | union(Builder|Closure $query, bool $all = false)
Добавляет оператор union к запросу. | |
| Builder|Builder | unionAll(Builder|Closure $query)
Добавляет оператор union all к запросу. | |
| $this | lock(string|bool $value = true)
Заблокировать выбранные строки в таблице. | |
| Builder | lockForUpdate()
Заблокировать выбранные строки в таблице для обновления. | |
| Builder | sharedLock()
Разделить блокировку выбранных строк в таблице. | |
| string | toSql()
Получить SQL представление запроса. |
| mixed|Builder | find(int|string $id, array $columns = ['*'])
Выполнить запрос для получения одной записи по идентификатору. | |
| mixed | value(string $column)
Получить значение одного столбца из первой строки результата запроса. | |
| Collection | get(array|string $columns = ['*'])
Выполнить запрос как оператор "select". | |
| array | runSelect()
Выполнить запрос как оператор "select" по подключению. | |
| LengthAwarePaginator | paginate(int $perPage = 15, array $columns = ['*'], string $pageName = 'page', int|null $page = null)
Разбить результат запроса на страницы с помощью пагинатора. | |
| Paginator | simplePaginate(int $perPage = 15, array $columns = ['*'], string $pageName = 'page', int|null $page = null)
Получить пагинатор, поддерживающий только простые ссылки "следующая" и "предыдущая". | |
| int | getCountForPagination(array $columns = ['*'])
Получить количество записей для пагинатора. | |
| array | runPaginationCountQuery(array $columns = ['*'])
Выполнить запрос для подсчета записей для пагинации. | |
| array | withoutSelectAliases(array $columns)
Удалить псевдонимы столбцов, так как они могут нарушить запросы подсчёта. | |
| LazyCollection | cursor()
Получить ленивую коллекцию для данного запроса. | |
| void | enforceOrderBy()
Выбросить исключение, если в запросе нет условия orderBy. | |
| Collection | pluck(string $column, string|null $key = null)
Получить массив значений заданного столбца. | |
| string|null | stripTableForPluck(string $column)
Удалить имя или псевдоним таблицы из идентификатора столбца. | |
| Collection | pluckFromObjectColumn(array $queryResult, string $column, string $key)
Извлечь значения столбцов из строк, представленных как объекты. | |
| Collection | pluckFromArrayColumn(array $queryResult, string $column, string $key)
Извлечь значения столбцов из строк, представленных как массивы. | |
| string | implode(string $column, string $glue = '')
Объединить значения заданного столбца в строку. | |
| bool | exists()
Определить, существуют ли какие-либо строки для текущего запроса. | |
| bool | doesntExist()
Определить, не существуют ли какие-либо строки для текущего запроса. | |
| 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 = ['*'])
Выполнить числовую агрегатную функцию на базе данных. | |
| $this | setAggregate(string $function, array $columns)
Установить свойство агрегирования без выполнения запроса. | |
| 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()
Получить новый экземпляр билдера запросов. | |
| Builder | forSubQuery()
Создать новый экземпляр запроса для подзапроса. | |
| Expression | raw(mixed $value)
Создать выражение базы данных в сыром виде. |
| массив | getBindings()
Получить текущие значения связываемых переменных запроса в плоском массиве. | |
| массив | getRawBindings()
Получить исходный массив связываемых переменных. | |
| $this | setBindings(массив $bindings, строка $type = 'where')
Установить связываемые переменные в конструкторе запроса. | |
| $this | addBinding(смешанный $value, строка $type = 'where')
Добавить связываемую переменную в запрос. | |
| $this | mergeBindings(Builder $query)
Слить массив связываемых переменных в наши связываемые переменные. | |
| массив | cleanBindings(массив $bindings)
Удалить все выражения из списка связываемых переменных. | |
| смешанный | flattenValue(смешанный $value)
Получить значение скалярного типа из входных данных неизвестного типа. | |
| строка | defaultKeyName()
Получить имя по умолчанию для ключа таблицы. | |
| ConnectionInterface | getConnection()
Получить экземпляр подключения к базе данных. | |
| Processor | getProcessor()
Получить экземпляр процессора запросов базы данных. | |
| Grammar | getGrammar()
Получить экземпляр синтаксического анализатора запросов. | |
| $this | useWritePdo()
Использовать pdo для записи запросов. | |
| bool | isQueryable(смешанный $value)
Определить, является ли значение экземпляром конструктора запроса или замыканием. | |
| Builder | cloneWithout(массив $properties)
Клонировать запрос без указанных свойств. | |
| Builder | cloneWithoutBindings(массив $except)
Клонировать запрос без указанных связываемых переменных. | |
| $this | dump()
Вывести текущий SQL и связываемые переменные. | |
| void | dd()
Прекратить выполнение и вывести текущий SQL и связываемые переменные. |
Подробное описание
bool chunk(целое $count, вызываемая функция $callback)
Разбить результаты запроса на части.
bool each(вызываемая функция $callback, целое $count = 1000)
Выполнить вызываемую функцию над каждым элементом, разбивая на части.
bool chunkById(целое $count, вызываемая функция $callback, строка|null $column = null, строка|null $alias = null)
Разбить результаты запроса на части, сравнивая идентификаторы.
bool eachById(вызываемая функция $callback, целое $count = 1000, строка|null $column = null, строка|null $alias = null)
Выполнить вызываемую функцию над каждым элементом, разбивая на части по идентификатору.
Модель|объект|BuildsQueries|null first(массив|строка $columns = ['*'])
Выполнить запрос и получить первый результат.
смешанный|$this when(смешанный $value, вызываемая функция $callback, вызываемая функция|null $default = null)
Применить изменения запроса в вызываемой функции, если заданное «значение» истинно.
$this tap(вызываемая функция $callback)
Передать запрос в заданную вызываемую функцию.
смешанный|$this unless(смешанный $value, вызываемая функция $callback, вызываемая функция|null $default = null)
Применить изменения запроса в вызываемой функции, если заданное «значение» ложно.
protected LengthAwarePaginator paginator(Collection $items, целое $total, целое $perPage, целое $currentPage, массив $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(ConnectionInterface $connection, Grammar $grammar = null, Processor $processor = null)
Создать новый экземпляр билдера запросов.
$this select(array|mixed $columns = ['*'])
Установить столбцы для выбора.
Builder|Builder selectSub(Closure|$this|string $query, string $as)
Добавить выражение подзапроса в запрос.
Builder|Builder selectRaw(string $expression, array $bindings = [])
Добавить новое выражение "raw" select в запрос.
Builder|Builder fromSub(Closure|Builder|string $query, string $as)
Выполняет "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)
Добавить условие JOIN в запрос.
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)
Добавить условие "join where" для левого соединения.
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')
Добавить базовое условие «где» к запросу.
protected $this addArrayOfWheres(array $column, string $boolean, string $method = 'where')
Добавить массив условий «где» к запросу.
array prepareValueAndOperator(string $value, string $operator, bool $useDefault = false)
Подготовить значение и оператор для условия «где».
protected bool invalidOperatorAndValue(string $operator, mixed $value)
Определить, является ли заданная комбинация оператора и значения допустимой.
Предотвращает использование нулевых значений с недопустимыми операторами.
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)
Добавить условие «или где» с сравнением двух столбцов в запрос.
$this whereRaw(string $sql, mixed $bindings = [], string $boolean = 'and')
Добавить сырое условие «где» в запрос.
Builder|Builder orWhereRaw(string $sql, mixed $bindings = [])
Добавить сырое условие «или где» в запрос.
$this whereIn(string $column, mixed $values, string $boolean = 'and', bool $not = false)
Добавить условие «в» в запрос.
Builder|Builder whereNotIn(string $column, mixed $values, string $boolean = 'and')
Добавить условие «не в» в запрос.
$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» в запрос.
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')
Добавить условие where not between в запрос.
Builder|Builder orWhereNotBetween(string $column, array $values)
Добавить условие or where not between в запрос.
Builder|Builder whereDate(string $column, string $operator, DateTimeInterface|string|null $value = null, string $boolean = 'and')
Добавить условие "where date" к запросу.
Builder|Builder orWhereDate(string $column, string $operator, DateTimeInterface|string|null $value = null)
Добавить условие "or where date" к запросу.
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')
Добавить условие "где месяц" в запрос.
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')
Добавить другой экземпляр Query Builder как вложенное условие "где" в Query Builder.
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)
Добавить условие или exists в запрос.
Builder|Builder whereNotExists(Closure $callback, string $boolean = 'and')
Добавить условие where not exists в запрос.
$this addWhereExistsQuery(Builder $query, string $boolean = 'and', bool $not = false)
Добавить условие «существует» к запросу.
$this whereRowValues(array $columns, string $operator, array $values, string $boolean = 'and')
Добавляет условие «где значения строки».
$this orWhereRowValues(array $columns, string $operator, array $values)
Добавляет условие «или где значения строки».
$this whereJsonContains(string $column, mixed $value, string $boolean = 'and', bool $not = false)
Добавить условие «где JSON содержит» к запросу.
$this orWhereJsonContains(string $column, mixed $value)
Добавить условие «или где JSON содержит» к запросу.
$this whereJsonDoesntContain(string $column, mixed $value, string $boolean = 'and')
Добавить условие «где JSON не содержит» к запросу.
$this orWhereJsonDoesntContain(string $column, mixed $value)
Добавить условие «или где JSON не содержит» к запросу.
$this whereJsonLength(string $column, mixed $operator, mixed $value = null, string $boolean = 'and')
Добавить условие «где длина JSON» к запросу.
$this orWhereJsonLength(string $column, mixed $operator, mixed $value = null)
Добавить условие «или где длина JSON» к запросу.
$this dynamicWhere(string $method, 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)
Добавить условие "having between" к запросу.
$this havingRaw(string $sql, array $bindings = [], string $boolean = 'and')
Добавить сырое условие having к запросу.
Builder|Builder orHavingRaw(string $sql, array $bindings = [])
Добавить сырое условие or having к запросу.
$this orderBy(Closure|Builder|Expression|string $column, string $direction = 'asc')
Добавить условие "order by" к запросу.
$this orderByDesc(string $column)
Добавить условие "order by" по убыванию к запросу.
Builder|Builder latest(string $column = 'created_at')
Добавить условие "order by" по времени к запросу.
Builder|Builder oldest(string $column = 'created_at')
Добавить условие "order by" по времени к запросу.
$this inRandomOrder(string $seed = '')
Вывести результаты запроса в случайном порядке.
$this orderByRaw(string $sql, array $bindings = [])
Добавить сырое условие "order by" к запросу.
$this offset(int $value)
Установить значение "offset" запроса.
$this limit(int $value)
Установить значение "limit" запроса.
Builder|Builder forPage(int $page, int $perPage = 15)
Установить limit и offset для заданной страницы.
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()
Получить имя по умолчанию для ключа таблицы.
ConnectionInterface getConnection()
Получить экземпляр подключения к базе данных.
Processor getProcessor()
Получить экземпляр обработчика запросов базы данных.
Grammar getGrammar()
Получить экземпляр синтаксического анализатора запросов.
$this useWritePdo()
Использовать pdo для записи запросов.
protected bool isQueryable(mixed $value)
Определить, является ли значение экземпляром билдера запросов или замыканием.
Builder cloneWithout(array $properties)
Клонировать запрос без указанных свойств.
Builder cloneWithoutBindings(array $except)
Клонировать запрос без указанных связываний.
$this dump()
Вывести текущий SQL и связывания.
void dd()
Вывести текущий SQL и связывания и завершить выполнение.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/6.x/Illuminate/Database/Query/Builder.html