Uit documentatie:
{ $pull : { field : {$gt: 3} } } removes array elements greater than 3
Dus ik neem aan dat je voorlopig zoiets als dit kunt doen:
{ $pull : { field : {$gt: 3, $lt: 5} } } // shoud remove elemet in 4 position
Of probeer bij te werken met positie-operator , ik veronderstel dat het zoiets als dit moet zijn:
{ $pull : "field.4" }
{ $pull : {"field.$": 4}}
Het is slechts een suggestie, want ik kan het nu niet testen.
Bijwerken:
Het lijkt erop dat je het niet in één stap goed kunt doen (er is zo'n bug in jira )
Maar je kunt verwijderen door het unset-element in positie te gebruiken en dat trekelementen met een null-waarde:
{$unset : {"array.4" : 1 }}
{$pull : {"array" : null}}