I have a collection with the following items :
{ \"Queries\" : [ { \"Results\" : [ { \"id\" : 1 }, { \"id\" : 2 } ] } ], \"_id\" : ObjectId(\"51ddb6f9b
This is the query you have to use:
db.collection.update( { "Queries.Results.id":1 }, { $pull: { "Queries.$.Results": {"id":1} } } )
You need to specify the "where" clause in order to find the document to update. You are also missing the positional operator $, you have to use it because Queries can have multiple Results.