Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Find Substring

Boa Tarde

É possível fazer um find com substring por um field, estou com dificuldade.

att

Aleksandro Bastos

2 respostas
solução!

Olá Aleksandro, tudo bem?

Neste caso você precisaria utilizar o Aggregation no lugar do Find, já que o substr é um operador de agregação, dessa forma:

db.alunos.aggregate(
  [
    {
      { $ project :      
        "nome": 1,
        "nome": { $substr: [ "$nome", 0, 10 ] }
      }
    }
  ]
)

É necessário o utilizar o operador de agregação project , com ele você pode especificar novos campos, redefinir valores entre outros, você pode saber mais como o project funciona acessando este link.

Dentro do project você especifica inclusão do campo que irá utilizar com o operador substr :

"nome": 1,

Em seguida você informa um nome para a sua consulta, no meu caso utilizei nome mesmo, pois estou retornando todos os nomes dos meus documentos da coleção alunos, em seguida você utiliza o operador substr, passando o campo, valor inicial e final:

  "nome": { $substr: [ "$nome", 0, 10 ] }

Você pode saber mais sobre o operador de agregação substr acessando a documentação do MongoDB.

Espero ter ajudado e bons estudos!

Obrigado