2015-12-22 12 views
5

Sto lavorando in Golang e mgo e desidero eliminare tutti i documenti in una raccolta più vecchia di una data specificata, utilizzando il valore _id.Elimina tutto il documento più vecchio di una data utilizzando _id in mongo usando mgo

Finora ho cercato di creare un manichino ObjectID utilizzando una struct NewObjectIdWithTime dopo che io sto cercando di eliminare i documenti utilizzando

collection.Remove(bson.M{"_id": bson.M{"$lt": objectId}}) 

ma non sto ottenendo alcun risultato, qualsiasi suggerimento?

+1

perché qualcuno dovrebbe inoltrare una domanda come questa? – turkishweb

+1

Sono d'accordo. Questa domanda è utile, anche se potrebbe essere migliorata. –

risposta

3

Io davvero non mi piace rispondere la mia auto, ma dato che l'unico aiuto che recive dalla comunità StackOverflow era una valutazione negativa (senza spiegare) vi posto la soluzione:

Il problema è mgo hanno RemoveAll Cancella tutti l'elemento corrisponde ai criteri, quindi la mia nuova query è: collection.RemoveAll(bson.M{"_id": bson.M{"$lt": objectId}})