sql >> Database >  >> NoSQL >> MongoDB

MongoDB $addField en $indexOfArray in Spring Data

Collection<String> nameList = Arrays.asList("John", "Bill");

Aggregation agg = newAggregation(
                    addFields()
                     .addField("scorrrz").withValue(arrayOf(nameList).indexOf("$name"))
                     .build()
);

De projectie van de aggregatie is een $addFields stage met een $indexOfArray aggregatie array operatie. Dit retourneert een veld scorrrz , en het heeft indexwaarde of -1 wanneer er geen match is. Dit liep goed met Spring Boot v2.3.10 en MongoDB v4.2.8.

Het uitvoeren van deze aggregatie passeert de pijplijn agg naar de MongoTemplate#aggregate methode.




  1. Mongodb-query gebruikt geen voorvoegsel op samengestelde index met tekstveld

  2. Mongodb aggregatie-, groep- en tellingsinstanties

  3. Analoog voor groepsconcat in sql

  4. PHP intl.so mislukt