PHP Class Doctrine\MongoDB\Aggregation\Builder

Since: 1.2
Author: alcaeus ([email protected])
Afficher le fichier Open project: doctrine/mongodb Class Usage Examples

Méthodes publiques

Méthode Description
__construct ( Doctrine\MongoDB\Collection $collection ) Create a new aggregation builder.
execute ( array $options = [] ) : Doctrine\MongoDB\Iterator Executes the aggregation pipeline
expr ( ) : Expr
geoNear ( float | array | GeoJson\Geometry\Point $x, float $y = null ) : Doctrine\MongoDB\Aggregation\Stage\GeoNear Outputs documents in order of nearest to farthest from a specified point.
getPipeline ( ) : array Returns the assembled aggregation pipeline
getStage ( integer $index ) : Stage Returns a certain stage from the pipeline
group ( ) : Group Groups documents by some specified expression and outputs to the next stage a document for each distinct grouping.
indexStats ( ) : Doctrine\MongoDB\Aggregation\Stage\IndexStats Returns statistics regarding the use of each index for the collection.
limit ( integer $limit ) : Doctrine\MongoDB\Aggregation\Stage\Limit Limits the number of documents passed to the next stage in the pipeline.
lookup ( string $from ) : Doctrine\MongoDB\Aggregation\Stage\Lookup Performs a left outer join to an unsharded collection in the same database to filter in documents from the “joined” collection for processing.
match ( ) : Match Filters the documents to pass only the documents that match the specified condition(s) to the next pipeline stage.
matchExpr ( ) : Expr Returns a query expression to be used in match stages
out ( string $collection ) : Out Takes the documents returned by the aggregation pipeline and writes them to a specified collection. This must be the last stage in the pipeline.
project ( ) : Project Passes along the documents with only the specified fields to the next stage in the pipeline. The specified fields can be existing fields from the input documents or newly computed fields.
redact ( ) : Doctrine\MongoDB\Aggregation\Stage\Redact Restricts the contents of the documents based on information stored in the documents themselves.
sample ( integer $size ) : Doctrine\MongoDB\Aggregation\Stage\Sample Randomly selects the specified number of documents from its input.
skip ( integer $skip ) : Doctrine\MongoDB\Aggregation\Stage\Skip Skips over the specified number of documents that pass into the stage and passes the remaining documents to the next stage in the pipeline.
sort ( array | string $fieldName, integer | string $order = null ) : Doctrine\MongoDB\Aggregation\Stage\Sort Sorts all input documents and returns them to the pipeline in sorted order.
unwind ( string $fieldName ) : Doctrine\MongoDB\Aggregation\Stage\Unwind Deconstructs an array field from the input documents to output a document for each element. Each output document is the input document with the value of the array field replaced by the element.

Méthodes protégées

Méthode Description
addStage ( Stage $stage ) : Stage

Method Details

__construct() public méthode

Create a new aggregation builder.
public __construct ( Doctrine\MongoDB\Collection $collection )
$collection Doctrine\MongoDB\Collection

addStage() protected méthode

protected addStage ( Stage $stage ) : Stage
$stage Stage
Résultat Stage

execute() public méthode

Executes the aggregation pipeline
public execute ( array $options = [] ) : Doctrine\MongoDB\Iterator
$options array
Résultat Doctrine\MongoDB\Iterator

expr() public méthode

public expr ( ) : Expr
Résultat Expr

geoNear() public méthode

A GeoJSON point may be provided as the first and only argument for 2dsphere queries. This single parameter may be a GeoJSON point object or an array corresponding to the point's JSON representation. If GeoJSON is used, the "spherical" option will default to true. You can only use this as the first stage of a pipeline.
See also: http://docs.mongodb.org/manual/reference/operator/aggregation/geoNear/
public geoNear ( float | array | GeoJson\Geometry\Point $x, float $y = null ) : Doctrine\MongoDB\Aggregation\Stage\GeoNear
$x float | array | GeoJson\Geometry\Point
$y float
Résultat Doctrine\MongoDB\Aggregation\Stage\GeoNear

getPipeline() public méthode

Returns the assembled aggregation pipeline
public getPipeline ( ) : array
Résultat array

getStage() public méthode

Returns a certain stage from the pipeline
public getStage ( integer $index ) : Stage
$index integer
Résultat Stage

group() public méthode

Groups documents by some specified expression and outputs to the next stage a document for each distinct grouping.
See also: http://docs.mongodb.org/manual/reference/operator/aggregation/group/
public group ( ) : Group
Résultat Doctrine\MongoDB\Aggregation\Stage\Group

indexStats() public méthode

Returns statistics regarding the use of each index for the collection.
See also: https://docs.mongodb.org/manual/reference/operator/aggregation/indexStats/
public indexStats ( ) : Doctrine\MongoDB\Aggregation\Stage\IndexStats
Résultat Doctrine\MongoDB\Aggregation\Stage\IndexStats

limit() public méthode

Limits the number of documents passed to the next stage in the pipeline.
See also: http://docs.mongodb.org/manual/reference/operator/aggregation/limit/
public limit ( integer $limit ) : Doctrine\MongoDB\Aggregation\Stage\Limit
$limit integer
Résultat Doctrine\MongoDB\Aggregation\Stage\Limit

lookup() public méthode

Performs a left outer join to an unsharded collection in the same database to filter in documents from the “joined” collection for processing.
See also: https://docs.mongodb.org/manual/reference/operator/aggregation/lookup/
public lookup ( string $from ) : Doctrine\MongoDB\Aggregation\Stage\Lookup
$from string
Résultat Doctrine\MongoDB\Aggregation\Stage\Lookup

match() public méthode

Filters the documents to pass only the documents that match the specified condition(s) to the next pipeline stage.
See also: http://docs.mongodb.org/manual/reference/operator/aggregation/match/
public match ( ) : Match
Résultat Doctrine\MongoDB\Aggregation\Stage\Match

matchExpr() public méthode

Returns a query expression to be used in match stages
public matchExpr ( ) : Expr
Résultat Doctrine\MongoDB\Query\Expr

out() public méthode

Takes the documents returned by the aggregation pipeline and writes them to a specified collection. This must be the last stage in the pipeline.
See also: http://docs.mongodb.org/manual/reference/operator/aggregation/out/
public out ( string $collection ) : Out
$collection string
Résultat Doctrine\MongoDB\Aggregation\Stage\Out

project() public méthode

Passes along the documents with only the specified fields to the next stage in the pipeline. The specified fields can be existing fields from the input documents or newly computed fields.
See also: http://docs.mongodb.org/manual/reference/operator/aggregation/project/
public project ( ) : Project
Résultat Doctrine\MongoDB\Aggregation\Stage\Project

redact() public méthode

Restricts the contents of the documents based on information stored in the documents themselves.
See also: http://docs.mongodb.org/manual/reference/operator/aggregation/redact/
public redact ( ) : Doctrine\MongoDB\Aggregation\Stage\Redact
Résultat Doctrine\MongoDB\Aggregation\Stage\Redact

sample() public méthode

Randomly selects the specified number of documents from its input.
See also: https://docs.mongodb.org/manual/reference/operator/aggregation/sample/
public sample ( integer $size ) : Doctrine\MongoDB\Aggregation\Stage\Sample
$size integer
Résultat Doctrine\MongoDB\Aggregation\Stage\Sample

skip() public méthode

Skips over the specified number of documents that pass into the stage and passes the remaining documents to the next stage in the pipeline.
See also: http://docs.mongodb.org/manual/reference/operator/aggregation/skip/
public skip ( integer $skip ) : Doctrine\MongoDB\Aggregation\Stage\Skip
$skip integer
Résultat Doctrine\MongoDB\Aggregation\Stage\Skip

sort() public méthode

If sorting by multiple fields, the first argument should be an array of field name (key) and order (value) pairs.
See also: http://docs.mongodb.org/manual/reference/operator/aggregation/sort/
public sort ( array | string $fieldName, integer | string $order = null ) : Doctrine\MongoDB\Aggregation\Stage\Sort
$fieldName array | string Field name or array of field/order pairs
$order integer | string Field order (if one field is specified)
Résultat Doctrine\MongoDB\Aggregation\Stage\Sort

unwind() public méthode

Deconstructs an array field from the input documents to output a document for each element. Each output document is the input document with the value of the array field replaced by the element.
See also: http://docs.mongodb.org/manual/reference/operator/aggregation/unwind/
public unwind ( string $fieldName ) : Doctrine\MongoDB\Aggregation\Stage\Unwind
$fieldName string The field to unwind. It is automatically prefixed with the $ sign
Résultat Doctrine\MongoDB\Aggregation\Stage\Unwind