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