MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Mongodb regex na agregação usando referência ao valor do campo


A maneira mais simples é usar $expr primeiro disponível em 3.6 assim:
{$match:{$expr:{$eq:[
    “$second”,
    {$substr:{
        “$first”,
        0,
        {$strLenCP:”$second”}
    }}
]}}}

Isso compara a string no campo 'second' com os primeiros N caracteres de 'first' onde N é o comprimento da segunda string. Se forem iguais, então 'primeiro' começa com 'segundo'.

4.2 adiciona suporte para $regex em expressões de agregação, mas começa com é muito mais simples e não precisa de expressões regulares.