sql >> Databáze >  >> NoSQL >> MongoDB

Odstraňte položky z pole dokumentů v Spring+Mongo

Musíte použít $pull update operátor, který převezme dotaz tak, aby odpovídal a odstranil všechny odpovídající řádky ve vloženém poli.

Něco jako

public List<String> removeTripObject( List<String> tripIds ) {
    Query query = Query.query( Criteria.where( "tripGcsId" ).in( tripIds ) );
    Update update = new Update().pull("trips", query );
    getMongoTemplate().updateMulti( new Query(), update, "ORDER" );
    return updatedOrders;
}

Reference

https://docs.mongodb.com/manual/reference/operator/update/pull/#remove-items-from-an-array-of-documents




  1. Regulární výraz MongoDB:Obsahuje e-mail uvnitř řetězce

  2. MongoDB Count celkový počet pravdivých a nepravdivých hodnot pro dokumenty odpovídající dotazu

  3. Jak zesměšňovat rozhraní IFindFluent

  4. Jak importovat MongoDB pomocí importů stylu es6?