MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Mongodb regex dans l'agrégation en utilisant la référence à la valeur du champ

Le plus simple est d'utiliser $expr disponible pour la première fois en 3.6 comme ceci :

{$match:{$expr:{$eq:[
    “$second”,
    {$substr:{
        “$first”,
        0,
        {$strLenCP:”$second”}
    }}
]}}}

Cela compare la chaîne dans le champ "second" avec les N premiers caractères de "first", où N est la longueur de la deuxième chaîne. S'ils sont égaux, alors "premier" commence par "second".

4.2 ajoute la prise en charge de $regex dans les expressions d'agrégation, mais commence par est beaucoup plus simple et n'a pas besoin d'expressions régulières.