trait QueriesRelationships mixin Builder (View source)
| $this | has($relation, string $operator = '>=', int $count = 1, string $boolean = 'and', Closure|null $callback = null)
Add a relationship count / exists condition to the query. | |
| $this | hasNested(string $relations, string $operator = '>=', int $count = 1, string $boolean = 'and', Closure|null $callback = null)
Add nested relationship count / exists conditions to the query. | |
| $this | orHas($relation, string $operator = '>=', int $count = 1)
Add a relationship count / exists condition to the query with an "or". | |
| $this | doesntHave($relation, string $boolean = 'and', Closure|null $callback = null)
Add a relationship count / exists condition to the query. | |
| $this | orDoesntHave($relation)
Add a relationship count / exists condition to the query with an "or". | |
| $this | whereHas($relation, Closure|null $callback = null, string $operator = '>=', int $count = 1)
Add a relationship count / exists condition to the query with where clauses. | |
| $this | withWhereHas($relation, Closure|null $callback = null, string $operator = '>=', int $count = 1)
Add a relationship count / exists condition to the query with where clauses. | |
| $this | orWhereHas($relation, Closure|null $callback = null, string $operator = '>=', int $count = 1)
Add a relationship count / exists condition to the query with where clauses and an "or". | |
| $this | whereDoesntHave($relation, Closure|null $callback = null)
Add a relationship count / exists condition to the query with where clauses. | |
| $this | orWhereDoesntHave($relation, Closure|null $callback = null)
Add a relationship count / exists condition to the query with where clauses and an "or". | |
| $this | hasMorph($relation, string|array $types, string $operator = '>=', int $count = 1, string $boolean = 'and', Closure|null $callback = null)
Add a polymorphic relationship count / exists condition to the query. | |
| TDeclaringModel> | getBelongsToRelation(MorphTo $relation, TRelatedModel> $type)
Get the BelongsTo relationship for a single polymorphic type. | |
| $this | orHasMorph($relation, string|array $types, string $operator = '>=', int $count = 1)
Add a polymorphic relationship count / exists condition to the query with an "or". | |
| $this | doesntHaveMorph($relation, string|array $types, string $boolean = 'and', Closure|null $callback = null)
Add a polymorphic relationship count / exists condition to the query. | |
| $this | orDoesntHaveMorph($relation, string|array $types)
Add a polymorphic relationship count / exists condition to the query with an "or". | |
| $this | whereHasMorph($relation, string|array $types, Closure|null $callback = null, string $operator = '>=', int $count = 1)
Add a polymorphic relationship count / exists condition to the query with where clauses. | |
| $this | orWhereHasMorph($relation, string|array $types, Closure|null $callback = null, string $operator = '>=', int $count = 1)
Add a polymorphic relationship count / exists condition to the query with where clauses and an "or". | |
| $this | whereDoesntHaveMorph($relation, string|array $types, Closure|null $callback = null)
Add a polymorphic relationship count / exists condition to the query with where clauses. | |
| $this | orWhereDoesntHaveMorph($relation, string|array $types, Closure|null $callback = null)
Add a polymorphic relationship count / exists condition to the query with where clauses and an "or". | |
| $this | whereRelation($relation, Closure|string|array|Expression $column, mixed $operator = null, mixed $value = null)
Add a basic where clause to a relationship query. | |
| $this | orWhereRelation($relation, Closure|string|array|Expression $column, mixed $operator = null, mixed $value = null)
Add an "or where" clause to a relationship query. | |
| $this | whereMorphRelation($relation, string|array $types, Closure|string|array|Expression $column, mixed $operator = null, mixed $value = null)
Add a polymorphic relationship condition to the query with a where clause. | |
| $this | orWhereMorphRelation($relation, string|array $types, Closure|string|array|Expression $column, mixed $operator = null, mixed $value = null)
Add a polymorphic relationship condition to the query with an "or where" clause. | |
| $this | whereMorphedTo($relation, Model|string|null $model, $boolean = 'and')
Add a morph-to relationship condition to the query. | |
| $this | whereNotMorphedTo($relation, Model|string $model, $boolean = 'and')
Add a not morph-to relationship condition to the query. | |
| $this | orWhereMorphedTo($relation, Model|string|null $model)
Add a morph-to relationship condition to the query with an "or where" clause. | |
| $this | orWhereNotMorphedTo($relation, Model|string $model)
Add a not morph-to relationship condition to the query with an "or where" clause. | |
| $this | whereBelongsTo(Model|Model> $related, string|null $relationshipName = null, string $boolean = 'and')
Add a "belongs to" relationship where clause to the query. | |
| $this | orWhereBelongsTo(Model $related, string|null $relationshipName = null)
Add an "BelongsTo" relationship with an "or where" clause to the query. | |
| $this | withAggregate(mixed $relations, Expression|string $column, string $function = null)
Add subselect queries to include an aggregate value for a relationship. | |
| string | getRelationHashedColumn(string $column, $relation)
Get the relation hashed column name for the given column and relation. | |
| $this | withCount(mixed $relations)
Add subselect queries to count the relations. | |
| $this | withMax(string|array $relation, Expression|string $column)
Add subselect queries to include the max of the relation's column. | |
| $this | withMin(string|array $relation, Expression|string $column)
Add subselect queries to include the min of the relation's column. | |
| $this | withSum(string|array $relation, Expression|string $column)
Add subselect queries to include the sum of the relation's column. | |
| $this | withAvg(string|array $relation, Expression|string $column)
Add subselect queries to include the average of the relation's column. | |
| $this | withExists(string|array $relation)
Add subselect queries to include the existence of related models. | |
| $this | addHasWhere(Builder $hasQuery, Relation $relation, string $operator, int $count, string $boolean)
Add the "has" condition where clause to the query. | |
| $this | mergeConstraintsFrom(Builder $from)
Merge the where constraints from another query to the current query. | |
| array | requalifyWhereTables(array $wheres, string $from, string $to)
Updates the table name for any columns with a new qualified name. | |
| $this | addWhereCountQuery(Builder $query, string $operator = '>=', int $count = 1, string $boolean = 'and')
Add a sub-query count clause to this query. | |
| getRelationWithoutConstraints(string $relation)
Get the "has relation" base query instance. | ||
| bool | canUseExistsForExistenceCheck(string $operator, int $count)
Check if we can run an "exists" query to optimize performance. |
Add a relationship count / exists condition to the query.
Add nested relationship count / exists conditions to the query.
Sets up recursive call to whereHas until we finish the nested relation.
Add a relationship count / exists condition to the query with an "or".
Add a relationship count / exists condition to the query.
Add a relationship count / exists condition to the query with an "or".
Add a relationship count / exists condition to the query with where clauses.
Add a relationship count / exists condition to the query with where clauses.
Also load the relationship with same condition.
Add a relationship count / exists condition to the query with where clauses and an "or".
Add a relationship count / exists condition to the query with where clauses.
Add a relationship count / exists condition to the query with where clauses and an "or".
Add a polymorphic relationship count / exists condition to the query.
Get the BelongsTo relationship for a single polymorphic type.
Add a polymorphic relationship count / exists condition to the query with an "or".
Add a polymorphic relationship count / exists condition to the query.
Add a polymorphic relationship count / exists condition to the query with an "or".
Add a polymorphic relationship count / exists condition to the query with where clauses.
Add a polymorphic relationship count / exists condition to the query with where clauses and an "or".
Add a polymorphic relationship count / exists condition to the query with where clauses.
Add a polymorphic relationship count / exists condition to the query with where clauses and an "or".
Add a basic where clause to a relationship query.
Add an "or where" clause to a relationship query.
Add a polymorphic relationship condition to the query with a where clause.
Add a polymorphic relationship condition to the query with an "or where" clause.
Add a morph-to relationship condition to the query.
Add a not morph-to relationship condition to the query.
Add a morph-to relationship condition to the query with an "or where" clause.
Add a not morph-to relationship condition to the query with an "or where" clause.
Add a "belongs to" relationship where clause to the query.
Add an "BelongsTo" relationship with an "or where" clause to the query.
Add subselect queries to include an aggregate value for a relationship.
Get the relation hashed column name for the given column and relation.
Add subselect queries to count the relations.
Add subselect queries to include the max of the relation's column.
Add subselect queries to include the min of the relation's column.
Add subselect queries to include the sum of the relation's column.
Add subselect queries to include the average of the relation's column.
Add subselect queries to include the existence of related models.
Add the "has" condition where clause to the query.
Merge the where constraints from another query to the current query.
Updates the table name for any columns with a new qualified name.
Add a sub-query count clause to this query.
Get the "has relation" base query instance.
Check if we can run an "exists" query to optimize performance.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/11.x/Illuminate/Database/Eloquent/Concerns/QueriesRelationships.html