

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# \$1out
<a name="out"></a>

Der `$out` Operator in Amazon DocumentDB wird verwendet, um das Ergebnis einer Aggregationspipeline in eine angegebene Sammlung zu schreiben.

`$out`sollte die letzte Phase in der Pipeline sein.

**Parameter**
+ `output_collection`: Der Name der Ausgabesammlung, in die die Aggregationsergebnisse geschrieben werden sollen.

**Hinweis**: Wenn die Sammlung bereits existiert, wird sie durch die Ergebnisse der Aggregationsphase ersetzt.

## Beispiel (MongoDB Shell)
<a name="out-examples"></a>

Das folgende Beispiel zeigt, wie der `$out` Operator in Amazon DocumentDB verwendet wird, um die Ergebnisse einer Aggregationspipeline in eine neue Sammlung zu schreiben.

**Erstellen Sie Beispieldokumente**

```
db.products.insertMany([
  { _id: 1, name: "Wireless Headphones", category: "Electronics", price: 100.0 },
  { _id: 2, name: "Smartphone", category: "Electronics", price: 200.0 },
  { _id: 3, name: "JavaScript Guide", category: "Books", price: 50.0 },
  { _id: 4, name: "Database Design Handbook", category: "Books", price: 75.0 }
]);
```

**Beispiel für eine Abfrage**

```
db.products.aggregate([
  { $group: { _id: "$category", totalPrice: { $sum: "$price" } } },
  { $out: "product_categories" }
])
```

**Ausgabe**

Keine (die Ergebnisse werden in die Ausgabesammlung geschrieben).

Die Aggregationspipeline gruppiert die Produkte nach Kategorien und berechnet den Gesamtpreis der Artikel für jede Kategorie. Der `$out` Operator schreibt die Ergebnisse in eine neue Sammlung mit dem Namen „product\$1categories“.

**So zeigen Sie die Ergebnisse in der Ausgabesammlung an:**

```
db.product_categories.find()
[
{ "_id" : "Books", "totalPrice" : 125 },
{ "_id" : "Electronics", "totalPrice" : 300 }
]
```

## Codebeispiele
<a name="out-code"></a>

Um ein Codebeispiel für die Verwendung des `$out` Befehls anzuzeigen, wählen Sie die Registerkarte für die Sprache, die Sie verwenden möchten:

------
#### [ Node.js ]

```
const { MongoClient } = require('mongodb');

async function demo_out_operator() {
  const client = await MongoClient.connect('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false');
  const db = client.db('test');
  const products = db.collection('products');

  // Execute aggregation with $out - results are stored in 'product_categories' collection
  await products.aggregate([
    { $group: { _id: "$category", totalPrice: { $sum: "$price" } } },
    { $out: "product_categories" }
  ]).toArray();

  // Retrieve the results from the output collection (limited to 20 records)
  const productCategories = db.collection('product_categories');
  const results = await productCategories.find({}).limit(20).toArray();
  
  console.log('Results stored in product_categories collection:', results);
  await client.close();
}

demo_out_operator();
```

------
#### [ Python ]

```
from pymongo import MongoClient

def demo_out_operator():
    client = MongoClient('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false')
    db = client['test']
    products = db['products']

    # Execute aggregation with $out - results are stored in 'product_categories' collection
    list(products.aggregate([
        { '$group': { '_id': '$category', 'totalPrice': { '$sum': '$price' } } },
        { '$out': 'product_categories' }
    ]))

    # Retrieve the results from the output collection (limited to 20 records)
    product_categories = db['product_categories']
    results = list(product_categories.find({}).limit(20))
    
    print('Results stored in product_categories collection:', results)
    client.close()

demo_out_operator()
```

------