View a markdown version of this page

$è il numero - Amazon DocumentDB

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

$è il numero

Nuovo dalla versione 8.0.1.

L'$isNumberoperatore in Amazon DocumentDB restituisce un valore booleano che indica se una determinata espressione si risolve in un tipo numerico (intero, decimale, doppio, lungo). Nota che gli array non sono considerati numerici, anche se tutti gli elementi dell'array sono numeri. Ad esempio, $isNumber applicato ai valori [1, 2, 3] restituiti. false

Parametri

  • expression: qualsiasi espressione per verificare se si risolve in un tipo numerico.

Esempio (MongoDB Shell)

L'esempio seguente mostra come utilizzare l'$isNumberoperatore per verificare se i valori dei campi sono numerici.

Crea documenti di esempio

db.data.insertMany([ {_id: 1, value: 42}, {_id: 2, value: "hello"}, {_id: 3, value: 3.14}, {_id: 4, value: null} ]);

Esempio di interrogazione

db.data.aggregate([ { $project: { isNum: { $isNumber: "$value" } } } ]);

Output

[ {_id: 1, isNum: true}, {_id: 2, isNum: false}, {_id: 3, isNum: true}, {_id: 4, isNum: false} ]

Esempi di codice

Per visualizzare un esempio di codice per l'utilizzo $isNumber dell'operatore, scegli la scheda corrispondente alla lingua che desideri utilizzare:

Node.js
const { MongoClient } = require('mongodb'); async function example() { const client = new MongoClient('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false'); try { await client.connect(); const db = client.db('test'); const collection = db.collection('data'); const result = await collection.aggregate([ { $project: { isNum: { $isNumber: "$value" } } } ]).toArray(); console.log(result); } finally { await client.close(); } } example();
Python
from pymongo import MongoClient def example(): client = MongoClient('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false') try: db = client['test'] collection = db['data'] result = list(collection.aggregate([ {'$project': {'isNum': {'$isNumber': '$value'}}} ])) print(result) finally: client.close() example()