

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.

# $atan
<a name="atan"></a>

Neu ab Version 8.0.1.

Der `$atan` Operator in Amazon DocumentDB gibt den umgekehrten Tangens (Arkustangens) eines Werts zurück.

Der Eingabeausdruck muss in einen numerischen Wert aufgelöst werden.

Das Ergebnis ist im Bogenmaß angegeben. Um Grade zu erhalten, wenden Sie `$radiansToDegrees` sich an die Ausgabe.

Der Rückgabetyp ist `double` standardmäßig. Wenn die Eingabe eine 128-Bit-Dezimalzahl ist, ist die Ausgabe ebenfalls eine 128-Bit-Dezimalzahl.

**Parameter**
+ `expression`: Ein Ausdruck, der in eine Zahl aufgelöst wird.

## Behavior
<a name="atan-behavior"></a>

**null und NaN **


| Beispiel | Ergebnisse | 
| --- | --- | 
| { $atan: NaN } | NaN | 
| { $atan: null } | null | 

Wenn die Eingabe ist `null` oder das Feld, auf das verwiesen wird, fehlt, lautet das Ergebnis`null`. Eine Eingabe von `NaN` ergibt`NaN`.

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

Das folgende Beispiel zeigt, wie der `$atan` Operator verwendet wird, um den Arktangens eines Werts zu berechnen.

**Erstellen Sie Beispieldokumente **

```
db.values.insertMany([
  { "_id": 1, "value": 0 },
  { "_id": 2, "value": 1 },
  { "_id": 3, "value": -1 }
]);
```

**Beispiel für eine Abfrage **

```
db.values.aggregate([
  { $project: {
    "angle": { $atan: "$value" }
  }}
]);
```

**Ausgabe**

```
[
  { "_id": 1, "angle": 0 },
  { "_id": 2, "angle": 0.7853981633974483 },
  { "_id": 3, "angle": -0.7853981633974483 }
]
```

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

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

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

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

async function main() {
  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 collection = db.collection('values');

  const result = await collection.aggregate([
    { $project: {
      "angle": { $atan: "$value" }
    }}
  ]).toArray();

  console.log(result);
  await client.close();
}

main();
```

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

```
from pymongo import MongoClient

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

    result = list(collection.aggregate([
        { '$project': {
            'angle': { '$atan': '$value' }
        }}
    ]))

    print(result)
    client.close()

if __name__ == "__main__":
    main()
```

------