अभी, मुझे नहीं लगता कि एक ऑपरेशन से ऐसा करना संभव है। बिटवाइज़ ऑपरेटरों (http://www.mongodb.org/display/DOCS/Updating#Updating-%24bit) के पास अभी तक '$xor' नहीं है, हालांकि मेरे पास इसके लिए एक पैच है।
अभी मुझे लगता है कि जिस समाधान के बारे में मैं सोचता हूं वह है हमेशा '$inc' का उपयोग करना:
cl.update( { "_id": ...}, { '$inc' : { 'field' : 1 } } );
फिर सत्य या असत्य की जाँच करने के बजाय, आप यह जाँच सकते हैं कि कोई वस्तु "सत्य" है या नहीं:
cl.find( { "_id": ..., 'field' : { '$mod' : [ 2, 1 ] } );
आईई, आप मॉड्यूल ऑपरेटर का उपयोग यह देखने के लिए करते हैं कि यह "अनसेट" होने के साथ भी असमान या असमान है, और असमान "सेट" है। यदि आप विपरीत व्यवहार करना चाहते हैं (अर्थात, वे सभी आइटम ढूंढें जिनमें फ़्लैग सेट नहीं है), तो उपयोग करें
[ 2, 0 ];