View a markdown version of this page

$ acos - 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.

$ acos

Nuevo a partir de la versión 8.0.1.

El $acos operador de Amazon DocumentDB devuelve el arcoseno (coseno inverso) de un valor. El valor de entrada debe estar comprendido entre -1 y 1.

Parámetros

  • expression: expresión que se resuelve en un número entre -1 y 1.

El resultado se expresa en radianes. Para obtener grados, aplíquelos $radiansToDegrees a la salida.

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.

Ejemplo (MongoDB Shell)

El siguiente ejemplo muestra cómo usar el $acos operador para calcular el arcoseno de los valores numéricos.

Cree documentos de muestra

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

Ejemplo de consulta

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

Salida

[ { "_id": 1, "angle": 0 }, { "_id": 2, "angle": 1.5707963267948966 }, { "_id": 3, "angle": 3.141592653589793 } ]

Ejemplos de código

Para ver un ejemplo de código sobre el uso del $acos 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('values'); const result = await collection.aggregate([ { $project: { "angle": { $acos: "$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': { '$acos': '$value' } }} ])) print(result) client.close() if __name__ == "__main__": main()