cari

Rumah  >  Soal Jawab  >  teks badan

mongodb 不管存在不存在该值都会返回1?

update({"tag":"9_14712612489","funding_id":9,"inventory_num":{"$gt":0}},{"$inc":{"inventory_num":-1}})

就是查找大于0的然后-1
但是这个数据不存在 也会返回true 是我程序接住了异常还是本来就是这样?

某草草某草草2757 hari yang lalu625

membalas semua(1)saya akan balas

  • 过去多啦不再A梦

    过去多啦不再A梦2017-05-02 09:23:43

    Perkara utama di sini ialah pemahaman yang berbeza tentang benar dan salah. benar bermakna operasi kemas kini telah berjaya, tetapi ia tidak semestinya mengemas kini sebarang rekod. Palsu bermakna operasi kemas kini gagal, yang mungkin disebabkan oleh pelbagai ralat dan pengecualian sistem, seperti tidak dapat menyambung ke mongod.

    > db.user.update({"username": "test"}, {"source": "ios"})
    WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
    > db.user.update({"username": "xxxx"}, {"source": "ios"})
    WriteResult({ "nMatched" : 0, "nUpserted" : 0, "nModified" : 0 })

    Seperti contoh di atas, kedua-duanya kembali benar kerana operasi mereka berjaya, tidak kira sama ada terdapat kemas kini atau tidak

    balas
    0
  • Batalbalas