View a markdown version of this page

$tan - Amazon DocumentDB

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

$tan

Nuevo a partir de la versión 8.0.1.

El $tan operador de Amazon DocumentDB devuelve la tangente de un valor que se mide en radianes.

La expresión de entrada debe convertirse en un valor numérico. Si el valor está en grados, aplíquelo $degreesToRadians antes de pasarlo a$tan.

El tipo de devolución es double el predeterminado. Si la entrada es un decimal de 128 bits, la salida también es un decimal de 128 bits.

Parámetros

  • expression: expresión que se resuelve en un número en radianes.

Comportamiento

nulo, NaN y +/- Infinito

Ejemplo Resultados
{ $tan: NaN } NaN
{ $tan: null } null
{ $tan: Infinity } o { $tan: -Infinity } Lanza un error.

Cuando la entrada es null o falta el campo al que se hace referencia, $tan devuelvenull. Una entrada de NaN productosNaN. El infinito positivo o negativo provoca un error porque la tangente no está definida en esos valores.

Ejemplo (MongoDB Shell)

El siguiente ejemplo muestra cómo usar el $tan operador para calcular la tangente de un ángulo en radianes.

Cree documentos de ejemplo

db.angles.insertMany([ { "_id": 1, "angle": 0 }, { "_id": 2, "angle": 0.7853981633974483 }, { "_id": 3, "angle": -0.7853981633974483 } ]);

Ejemplo de consulta

db.angles.aggregate([ { $project: { "tangent": { $tan: "$angle" } }} ]);

Salida

[ { "_id": 1, "tangent": 0 }, { "_id": 2, "tangent": 0.9999999999999999 }, { "_id": 3, "tangent": -0.9999999999999999 } ]

Ejemplos de código

Para ver un ejemplo de código sobre el uso del $tan operador, elige la pestaña del idioma que quieres usar:

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('angles'); const result = await collection.aggregate([ { $project: { "tangent": { $tan: "$angle" } }} ]).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['angles'] result = list(collection.aggregate([ { '$project': { 'tangent': { '$tan': '$angle' } }} ])) print(result) client.close() if __name__ == "__main__": main()