MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

php . के साथ अपरर्ट के बाद mongodb _id ऑब्जेक्ट प्राप्त करें

हां -- एक ही क्वेरी का उपयोग करना संभव है।

MongoDB में एक findAndModify . शामिल है कमांड जो किसी दस्तावेज़ को परमाणु रूप से संशोधित कर सकता है और उसे वापस कर सकता है (डिफ़ॉल्ट रूप से यह वास्तव में दस्तावेज़ को संशोधित करने से पहले वापस कर देता है)।

PHP ड्राइवरों में संग्रह वर्ग पर इसके लिए एक सुविधाजनक तरीका शामिल नहीं है (फिर भी - यह बग देखें), लेकिन इसका अभी भी उपयोग किया जा सकता है (ध्यान दें कि मेरा PHP भयानक है, इसलिए मैंने बहुत अच्छी तरह से एक वाक्यविन्यास त्रुटि की है निम्नलिखित स्निपेट में):

$key = array( 'something' => 'unique' );
$data = array( '$inc' => array( 'someint' => 1 ) );
$result = $mongodb->db->command( array(
    'findAndModify' => 'collection',
    'query' => $key,
    'update' => $data,
    'new' => true,        # To get back the document after the upsert
    'upsert' => true,
    'fields' => array( '_id' => 1 )   # Only return _id field
) );
$id = $result['value']['_id'];


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB में दस्तावेज़ गिनने के 7 तरीके

  2. MongoDB:केवल पिछले 24 घंटों में बनाए गए दस्तावेज़ प्राप्त करें?

  3. उबंटू से मोंगोडीबी को अनइंस्टॉल करें

  4. डोकर कंटेनर से मोंगोडब होस्ट करने के लिए कनेक्ट करें

  5. MongoDB के बारे में, हम इसका उपयोग क्यों करते हैं? MongoDB की शब्दावली और कार्यान्वयन