MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

MongoDB:aggiorna ogni documento su un campo

Indipendentemente dalla versione, per il tuo esempio, il <update> è:

{  $set: { lastLookedAt: Date.now() / 1000 }  }

Tuttavia, a seconda della versione di MongoDB, la query avrà un aspetto diverso. Indipendentemente dalla versione, la chiave è che la condizione vuota {} corrisponderà a qualsiasi documento . Nella shell Mongo o con qualsiasi client MongoDB:

$versione>=3.2:

db.foo.updateMany( {}, <update> )
  • {} è la condizione (la condizione vuota corrisponde a qualsiasi documento)

3.2> $versione>=2.2:

db.foo.update( {}, <update>, { multi: true } )
  • {} è la condizione (la condizione vuota corrisponde a qualsiasi documento)
  • {multi: true} è l'opzione "aggiorna più documenti"

$versione <2.2:

db.foo.update( {}, <update>, false, true )
  • {} è la condizione (la condizione vuota corrisponde a qualsiasi documento)
  • false è per il parametro "upsert"
  • true è per il parametro "multi" (aggiorna più record)