QueryInterface
interface QueryInterface implements AlterableInterface (View source)
Interface for entity queries.
Never instantiate classes implementing this interface directly. Always use the QueryFactory class.
Methods
Gets the ID of the entity type for this query.
Add a condition to the query or a condition group.
Queries for a non-empty value on a field.
Queries for an empty field.
Enables a pager for the query.
Defines the range of the query.
Sorts the result set by a given field.
Makes this a count query.
Enables sortable tables for this query.
Enables or disables access checking for this query.
Execute the query.
Creates a new group of conditions ANDed together.
Creates a new group of conditions ORed together.
Limits the query to only default revisions.
Queries the latest revision.
Queries all the revisions.
Details
$this
addTag($tag)
Adds a tag to a query.
Tags are strings that identify a query. A query may have any number of tags. Tags are used to mark a query so that alter hooks may decide if they wish to take action. Tags should be all lower-case and contain only letters, numbers, and underscore, and start with a letter. That is, they should follow the same rules as PHP identifiers in general.
true
hasTag($tag)
Determines if a given query has a given tag.
true
hasAllTags()
Determines if a given query has all specified tags.
Each tag to check should be supplied as a separate argument.
true
hasAnyTag()
Determines if a given query has any specified tag.
Each tag to check should be supplied as a separate argument.
$this
addMetaData($key, $object)
Adds additional metadata to the query.
Often, a query may need to provide additional contextual data to alter hooks. Alter hooks may then use that information to decide if and how to take action.
The
getMetaData($key)
Retrieves a given piece of metadata.
string
getEntityTypeId()
Gets the ID of the entity type for this query.
$this
condition(string|ConditionInterface $field, string|int|bool|array|null $value = NULL, string|null $operator = NULL, string|null $langcode = NULL)
Add a condition to the query or a condition group.
For example, to find all entities containing both the Turkish 'merhaba' and the Polish 'siema' within a 'greetings' text field:
$this
exists(string $field, string|null $langcode = NULL)
Queries for a non-empty value on a field.
$this
notExists(string $field, string|null $langcode = NULL)
Queries for an empty field.
$this
pager(int $limit = 10, int|null $element = NULL)
Enables a pager for the query.
$this
range(int|null $start = NULL, int|null $length = NULL)
Defines the range of the query.
$this
sort(string $field, string $direction = 'ASC', string|null $langcode = NULL)
Sorts the result set by a given field.
$this
count()
Makes this a count query.
For count queries, execute() returns the number entities found.
$this
tableSort(array $headers)
Enables sortable tables for this query.
$this
accessCheck(bool $access_check = TRUE)
Enables or disables access checking for this query.
int|array
execute()
Execute the query.
ConditionInterface
andConditionGroup()
Creates a new group of conditions ANDed together.
For example, consider a drawing entity type with a 'figures' multi-value field containing 'shape' and 'color' columns. To find all drawings containing both a red triangle and a blue circle:
ConditionInterface
orConditionGroup()
Creates a new group of conditions ORed together.
For example, consider a map entity with an 'attributes' field containing 'building_type' and 'color' columns. To find all green and red bikesheds:
$this
currentRevision()
Limits the query to only default revisions.
See the @link entity_api Entity API topic @endlink for information about the current revision.
$this
latestRevision()
Queries the latest revision.
The latest revision is the most recent revision of an entity. This will be either the default revision, or a pending revision if one exists and it is newer than the default.
$this
allRevisions()
Queries all the revisions.