Отношения запросов
трайт Отношения запросов (Просмотреть исходный код)
Методы
| Builder|QueriesRelationships | has(Relation|string $relation, string $operator = '>=', int $count = 1, string $boolean = 'and', Closure $callback = null)
Добавить условие подсчёта/существования отношения в запрос. | |
| Builder|QueriesRelationships | hasNested(string $relations, string $operator = '>=', int $count = 1, string $boolean = 'and', Closure|null $callback = null)
Добавить условия подсчёта/существования вложенных отношений в запрос. | |
| Builder|QueriesRelationships | orHas(string $relation, string $operator = '>=', int $count = 1)
Добавить условие подсчёта/существования отношения в запрос с "или". | |
| Builder|QueriesRelationships | doesntHave(string $relation, string $boolean = 'and', Closure $callback = null)
Добавить условие подсчёта/отсутствия отношения в запрос. | |
| Builder|QueriesRelationships | orDoesntHave(string $relation)
Добавить условие подсчёта/отсутствия отношения в запрос с "или". | |
| Builder|QueriesRelationships | whereHas(string $relation, Closure $callback = null, string $operator = '>=', int $count = 1)
Добавить условие подсчёта/существования отношения в запрос с условиями where. | |
| Builder|QueriesRelationships | withWhereHas(string $relation, Closure $callback = null, string $operator = '>=', int $count = 1)
Добавить условие подсчёта/существования отношения в запрос с условиями where. | |
| Builder|QueriesRelationships | orWhereHas(string $relation, Closure $callback = null, string $operator = '>=', int $count = 1)
Добавить условие подсчёта/существования отношения в запрос с условиями where и "или". | |
| Builder|QueriesRelationships | whereDoesntHave(string $relation, Closure $callback = null)
Добавить условие подсчёта/отсутствия отношения в запрос с условиями where. | |
| Builder|QueriesRelationships | orWhereDoesntHave(string $relation, Closure $callback = null)
Добавить условие подсчёта/отсутствия отношения в запрос с условиями where и "или". | |
| Builder|QueriesRelationships | hasMorph(MorphTo|string $relation, string|array $types, string $operator = '>=', int $count = 1, string $boolean = 'and', Closure $callback = null)
Добавить условие полиморфного подсчёта/существования отношения в запрос. | |
| BelongsTo | getBelongsToRelation(MorphTo $relation, string $type)
Получить отношение BelongsTo для одного полиморфного типа. | |
| Builder|QueriesRelationships | orHasMorph(MorphTo|string $relation, string|array $types, string $operator = '>=', int $count = 1)
Добавить условие полиморфного подсчёта/существования отношения в запрос с "или". | |
| Builder|QueriesRelationships | doesntHaveMorph(MorphTo|string $relation, string|array $types, string $boolean = 'and', Closure $callback = null)
Добавить условие полиморфного подсчёта/отсутствия отношения в запрос. | |
| Builder|QueriesRelationships | orDoesntHaveMorph(MorphTo|string $relation, string|array $types)
Добавить условие полиморфного подсчёта/отсутствия отношения в запрос с "или". | |
| Builder|QueriesRelationships | whereHasMorph(MorphTo|string $relation, string|array $types, Closure $callback = null, string $operator = '>=', int $count = 1)
Добавить условие полиморфного подсчёта/существования отношения в запрос с условиями where. | |
| Builder|QueriesRelationships | orWhereHasMorph(MorphTo|string $relation, string|array $types, Closure $callback = null, string $operator = '>=', int $count = 1)
Добавить условие полиморфного подсчёта/существования отношения в запрос с условиями where и "или". | |
| Builder|QueriesRelationships | whereDoesntHaveMorph(MorphTo|string $relation, string|array $types, Closure $callback = null)
Добавить условие полиморфного подсчёта/отсутствия отношения в запрос с условиями where. | |
| Builder|QueriesRelationships | orWhereDoesntHaveMorph(MorphTo|string $relation, string|array $types, Closure $callback = null)
Добавить условие полиморфного подсчёта/отсутствия отношения в запрос с условиями where и "или". |
| Builder|QueriesRelationships | whereRelation(string $relation, Closure|string|array|Expression $column, mixed $operator = null, mixed $value = null)
Добавить базовое условие where к запросу к отношению. | |
| Builder|QueriesRelationships | orWhereRelation(string $relation, Closure|string|array|Expression $column, mixed $operator = null, mixed $value = null)
Добавить условие "или где" к запросу к отношению. | |
| Builder|QueriesRelationships | whereMorphRelation(MorphTo|string $relation, string|array $types, Closure|string|array|Expression $column, mixed $operator = null, mixed $value = null)
Добавить условие полиморфного отношения к запросу с помощью условия where. | |
| Builder|QueriesRelationships | orWhereMorphRelation(MorphTo|string $relation, string|array $types, Closure|string|array|Expression $column, mixed $operator = null, mixed $value = null)
Добавить условие полиморфного отношения к запросу с помощью условия "или где". | |
| Builder|QueriesRelationships | whereMorphedTo(MorphTo|string $relation, Model|string $model, $boolean = 'and')
Добавить условие отношения morph-to к запросу. | |
| Builder|QueriesRelationships | whereNotMorphedTo(MorphTo|string $relation, Model|string $model, $boolean = 'and')
Добавить условие отношения не morph-to к запросу. | |
| Builder|QueriesRelationships | orWhereMorphedTo(MorphTo|string $relation, Model|string $model)
Добавить условие отношения morph-to к запросу с помощью условия "или где". | |
| Builder|QueriesRelationships | orWhereNotMorphedTo(MorphTo|string $relation, Model|string $model)
Добавить условие отношения не morph-to к запросу с помощью условия "или где". | |
| $this | whereBelongsTo(Model|Model> $related, string|null $relationshipName = null, string $boolean = 'and')
Добавить условие отношения "belongs to" к запросу. | |
| $this | orWhereBelongsTo(Model $related, string|null $relationshipName = null)
Добавить условие отношения "BelongsTo" с помощью условия "или где" к запросу. | |
| $this | withAggregate(mixed $relations, string $column, string $function = null)
Добавить подзапросы для включения агрегированного значения для отношения. | |
| string | getRelationHashedColumn(string $column, Relationship $relation)
Получить имя хэшированного столбца отношения для заданного столбца и отношения. | |
| $this | withCount(mixed $relations)
Добавить подзапросы для подсчёта отношений. | |
| $this | withMax(string|array $relation, string $column)
Добавить подзапросы для включения максимального значения столбца отношения. | |
| $this | withMin(string|array $relation, string $column)
Добавить подзапросы для включения минимального значения столбца отношения. | |
| $this | withSum(string|array $relation, string $column)
Добавить подзапросы для включения суммы столбца отношения. | |
| $this | withAvg(string|array $relation, string $column)
Добавить подзапросы для включения среднего значения столбца отношения. | |
| $this | withExists(string|array $relation)
Добавить подзапросы для проверки существования связанных моделей. | |
| Builder|QueriesRelationships | addHasWhere(Builder $hasQuery, Relation $relation, string $operator, int $count, string $boolean)
Добавить условие "has" с помощью условия where к запросу. | |
| Builder|QueriesRelationships | mergeConstraintsFrom(Builder $from)
Объединить условия where из другого запроса в текущий запрос. | |
| array | requalifyWhereTables(array $wheres, string $from, string $to)
Обновляет имя таблицы для любых столбцов с новым квалифицированным именем. | |
| $this | addWhereCountQuery(Builder $query, string $operator = '>=', int $count = 1, string $boolean = 'and')
Добавить условие подзапроса подсчета к этому запросу. | |
| Relation | getRelationWithoutConstraints(string $relation)
Получить экземпляр базового запроса "has relation". | |
| bool | canUseExistsForExistenceCheck(string $operator, int $count)
Проверить, можем ли мы выполнить запрос "exists" для оптимизации производительности. |
Подробности
Builder|QueriesRelationships has(Relation|string $relation, string $operator = '>=', int $count = 1, string $boolean = 'and', Closure $callback = null)
Добавить условие подсчёта/существования отношения к запросу.
protected Builder|QueriesRelationships hasNested(string $relations, string $operator = '>=', int $count = 1, string $boolean = 'and', Closure|null $callback = null)
Добавить вложенные условия подсчёта/существования отношения к запросу.
Настраивает рекурсивный вызов whereHas до тех пор, пока не завершится вложенное отношение.
Builder|QueriesRelationships orHas(string $relation, string $operator = '>=', int $count = 1)
Добавить условие подсчёта/существования отношения к запросу с "или".
Builder|QueriesRelationships doesntHave(string $relation, string $boolean = 'and', Closure $callback = null)
Добавить условие подсчёта/существования отношения к запросу.
Builder|QueriesRelationships orDoesntHave(string $relation)
Добавить условие подсчёта/существования отношения к запросу с "или".
Builder|QueriesRelationships whereHas(string $relation, Closure $callback = null, string $operator = '>=', int $count = 1)
Добавить условие подсчёта/существования отношения к запросу с условиями where.
Builder|QueriesRelationships withWhereHas(string $relation, Closure $callback = null, string $operator = '>=', int $count = 1)
Добавить условие подсчёта/существования отношения к запросу с условиями where.
Также загрузить отношение с тем же условием.
Builder|QueriesRelationships orWhereHas(string $relation, Closure $callback = null, string $operator = '>=', int $count = 1)
Добавить условие подсчёта/существования отношения к запросу с условиями where и "или".
Builder|QueriesRelationships whereDoesntHave(string $relation, Closure $callback = null)
Добавить условие подсчёта/существования отношения к запросу с условиями where.
Builder|QueriesRelationships orWhereDoesntHave(string $relation, Closure $callback = null)
Добавить условие подсчёта/существования связи к запросу с условиями where и "or".
Builder|QueriesRelationships hasMorph(MorphTo|string $relation, string|array $types, string $operator = '>=', int $count = 1, string $boolean = 'and', Closure $callback = null)
Добавить условие подсчёта/существования полиморфной связи к запросу.
protected BelongsTo getBelongsToRelation(MorphTo $relation, string $type)
Получить отношение BelongsTo для единственного полиморфного типа.
Builder|QueriesRelationships orHasMorph(MorphTo|string $relation, string|array $types, string $operator = '>=', int $count = 1)
Добавить условие подсчёта/существования полиморфной связи к запросу с "or".
Builder|QueriesRelationships doesntHaveMorph(MorphTo|string $relation, string|array $types, string $boolean = 'and', Closure $callback = null)
Добавить условие подсчёта/существования полиморфной связи к запросу.
Builder|QueriesRelationships orDoesntHaveMorph(MorphTo|string $relation, string|array $types)
Добавить условие подсчёта/существования полиморфной связи к запросу с "or".
Builder|QueriesRelationships whereHasMorph(MorphTo|string $relation, string|array $types, Closure $callback = null, string $operator = '>=', int $count = 1)
Добавить условие подсчёта/существования полиморфной связи к запросу с условиями where.
Builder|QueriesRelationships orWhereHasMorph(MorphTo|string $relation, string|array $types, Closure $callback = null, string $operator = '>=', int $count = 1)
Добавить условие подсчёта/существования полиморфной связи к запросу с условиями where и "or".
Builder|QueriesRelationships whereDoesntHaveMorph(MorphTo|string $relation, string|array $types, Closure $callback = null)
Добавить условие подсчёта/существования полиморфного отношения к запросу с условиями where.
Builder|QueriesRelationships orWhereDoesntHaveMorph(MorphTo|string $relation, string|array $types, Closure $callback = null)
Добавить условие подсчёта/существования полиморфного отношения к запросу с условиями where и "или".
Builder|QueriesRelationships whereRelation(string $relation, Closure|string|array|Expression $column, mixed $operator = null, mixed $value = null)
Добавить базовое условие where к запросу отношения.
Builder|QueriesRelationships orWhereRelation(string $relation, Closure|string|array|Expression $column, mixed $operator = null, mixed $value = null)
Добавить условие "или где" к запросу отношения.
Builder|QueriesRelationships whereMorphRelation(MorphTo|string $relation, string|array $types, Closure|string|array|Expression $column, mixed $operator = null, mixed $value = null)
Добавить условие полиморфного отношения к запросу с условием where.
Builder|QueriesRelationships orWhereMorphRelation(MorphTo|string $relation, string|array $types, Closure|string|array|Expression $column, mixed $operator = null, mixed $value = null)
Добавить условие полиморфного отношения к запросу с условием "или где".
Builder|QueriesRelationships whereMorphedTo(MorphTo|string $relation, Model|string $model, $boolean = 'and')
Добавить условие отношения morph-to к запросу.
Builder|QueriesRelationships whereNotMorphedTo(MorphTo|string $relation, Model|string $model, $boolean = 'and')
Добавить условие "не морфированное к" для отношения в запрос.
Builder|QueriesRelationships orWhereMorphedTo(MorphTo|string $relation, Model|string $model)
Добавить условие "морфированное к" для отношения в запрос с помощью "или где" (or where).
Builder|QueriesRelationships orWhereNotMorphedTo(MorphTo|string $relation, Model|string $model)
Добавить условие "не морфированное к" для отношения в запрос с помощью "или где" (or where).
$this whereBelongsTo(Model|Model> $related, string|null $relationshipName = null, string $boolean = 'and')
Добавить условие "принадлежит" для отношения в запрос.
$this orWhereBelongsTo(Model $related, string|null $relationshipName = null)
Добавить условие "принадлежит" для отношения в запрос с помощью "или где" (or where).
$this withAggregate(mixed $relations, string $column, string $function = null)
Добавить подзапросы для включения агрегированного значения для отношения.
protected string getRelationHashedColumn(string $column, Relationship $relation)
Получить имя хэшированного столбца отношения для заданного столбца и отношения.
$this withCount(mixed $relations)
Добавить подзапросы для подсчёта соотношений.
$this withMax(string|array $relation, string $column)
Добавить подзапросы для включения максимального значения столбца соотношения.
$this withMin(string|array $relation, string $column)
Добавить подзапросы для включения минимального значения столбца соотношения.
$this withSum(string|array $relation, string $column)
Добавить подзапросы для включения суммы значений столбца соотношения.
$this withAvg(string|array $relation, string $column)
Добавить подзапросы для включения среднего значения столбца соотношения.
$this withExists(string|array $relation)
Добавить подзапросы для проверки существования связанных моделей.
protected Builder|QueriesRelationships addHasWhere(Builder $hasQuery, Relation $relation, string $operator, int $count, string $boolean)
Добавить условие "has" в запрос.
Builder|QueriesRelationships mergeConstraintsFrom(Builder $from)
Объединить условия из другого запроса в текущий.
protected array requalifyWhereTables(array $wheres, string $from, string $to)
Обновляет имя таблицы для столбцов с новым квалифицированным именем.
protected $this addWhereCountQuery(Builder $query, string $operator = '>=', int $count = 1, string $boolean = 'and')
Добавить условие подзапроса подсчета в этот запрос.
protected Relation getRelationWithoutConstraints(string $relation)
Получить базовый экземпляр запроса для связи "has".
protected bool canUseExistsForExistenceCheck(string $operator, int $count)
Проверить, можем ли использовать запрос "exists" для оптимизации производительности.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/9.x/Illuminate/Database/Eloquent/Concerns/QueriesRelationships.html