QuerySummary¶
-
class
lsst.daf.butler.registry.queries.
QuerySummary
(requested: lsst.daf.butler.core.dimensions._graph.DimensionGraph, *, dataId: Optional[lsst.daf.butler.core.dimensions._coordinate.DataCoordinate, None] = None, expression: Union[str, lsst.daf.butler.registry.queries._structs.QueryWhereExpression, None] = None, whereRegion: Optional[lsst.sphgeom._sphgeom.Region, None] = None, bind: Optional[collections.abc.Mapping[str, Any], None] = None, defaults: Optional[lsst.daf.butler.core.dimensions._coordinate.DataCoordinate, None] = None, datasets: collections.abc.Iterable[lsst.daf.butler.core.datasets.type.DatasetType] = (), order_by: Optional[collections.abc.Iterable[str], None] = None, limit: Optional[tuple, None] = None, check: bool = True)¶ Bases:
object
A struct that holds and categorizes the dimensions involved in a query.
A
QuerySummary
instance is necessary to construct aQueryBuilder
, and it needs to include all of the dimensions that will be included in the query (including any needed for querying datasets).Parameters: - requested :
DimensionGraph
The dimensions whose primary keys should be included in the result rows of the query.
- dataId :
DataCoordinate
, optional A fully-expanded data ID identifying dimensions known in advance. If not provided, will be set to an empty data ID.
- expression :
str
orQueryWhereExpression
, optional A user-provided string WHERE expression.
- whereRegion :
lsst.sphgeom.Region
, optional If
None
anddataId
is an expanded data ID,dataId.region
will be used to construct one.- bind :
Mapping
[str
,object
], optional Mapping containing literal values that should be injected into the query expression, keyed by the identifiers they replace.
- defaults :
DataCoordinate
, optional A data ID containing default for governor dimensions.
- datasets :
Iterable
[DatasetType
], optional Dataset types whose searches may be joined into the query. Callers must still call
QueryBuilder.joinDataset
explicitly to control how that join happens (e.g. which collections are searched), but by declaring them here first we can ensure that the query includes the right dimensions for those joins.- order_by :
Iterable
[str
] Sequence of names to use for ordering with optional “-” prefix.
- limit :
Tuple
, optional Limit on the number of returned rows and optional offset.
- check :
bool
If
True
(default) check the query for consistency. This may reject some valid queries that resemble common mistakes (e.g. queries for visits without specifying an instrument).
Attributes Summary
mustHaveKeysJoined
Dimensions whose primary keys must be used in the JOIN ON clauses of the query, even if their tables do not appear ( DimensionGraph
).mustHaveTableJoined
Dimension elements whose associated tables must appear in the query’s FROM clause ( NamedValueSet
ofDimensionElement
).spatial
Dimension elements whose regions and skypix IDs should be included in the query ( NamedValueAbstractSet
ofDimensionElement
).temporal
Dimension elements whose timespans should be included in the query ( NamedValueSet
ofDimensionElement
).universe
All known dimensions ( DimensionUniverse
).Attributes Documentation
-
mustHaveKeysJoined
¶ Dimensions whose primary keys must be used in the JOIN ON clauses of the query, even if their tables do not appear (
DimensionGraph
).A
Dimension
primary key can appear in a join clause without its table via a foreign key column in table of a dependent dimension element or dataset.
-
mustHaveTableJoined
¶ Dimension elements whose associated tables must appear in the query’s FROM clause (
NamedValueSet
ofDimensionElement
).
-
spatial
¶ Dimension elements whose regions and skypix IDs should be included in the query (
NamedValueAbstractSet
ofDimensionElement
).
-
temporal
¶ Dimension elements whose timespans should be included in the query (
NamedValueSet
ofDimensionElement
).
-
universe
¶ All known dimensions (
DimensionUniverse
).
- requested :