MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Jeśli mam identyfikator dokumentu mongo jako ciąg, jak mogę zapytać o to jako _id?

Czy masz na myśli 24-cyfrowy ciąg w identyfikatorze ObjectId?

Zakładając, że to masz na myśli, większość sterowników ma sposób, aby wziąć ciąg i przekonwertować go na ObjectId. W JavaScript to:

.find({_id:new ObjectId("4f91bfcfaa7c5687a0c686d4")})

Zaktualizowano być nieco bardziej użytecznym dla sterownika node-native (z dokumentacji na https://github.com/christkv/node-mongodb-native):

// Get the objectID type
var ObjectID = require('mongodb').ObjectID;

var idString = '4e4e1638c85e808431000003';
collection.findOne({_id: new ObjectID(idString)}, console.log)  // ok
collection.findOne({_id: idString}, console.log)  // wrong! callback gets undefined


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB :Struktura agregacji :Pobierz ostatni datowany dokument według identyfikatora grupowania

  2. Jak mogę stwierdzić, gdzie mongoDB przechowuje dane? (nie jest w domyślnym /data/db!)

  3. Analizowanie powolnych zapytań w MongoDB

  4. Natywne maskowanie MongoDB (trzecia metoda)

  5. Zwróć rzeczywisty typ pola w MongoDB