Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Marciu

Classificar subFields dentro de um documento

Recommended Posts

Olá amigos!!

 

Preciso fazer classificação dentro campos dentro de um documento e não estou conseguindo, alguém tem idéia??

 

Seria algo do tipo:

 


{
           _id:1,
           properties:{
                       profissao:{
                                  valor:”programador”,
                                  order: 2
                       },
                       nome:{
                                  valor:”Marcio”,
                                  order: 1
                       },
                       idade:{
                                  valor:”30”,
                                  order: 3
                       },
                       robby:{
                                  valor:”futebol”,
                                  order: 4
                       },

           }
}


{
           _id:2,
           properties:{
                       profissao:{
                                  valor:”estudante”,
                                  order: 2
                       },
                       nome:{
                                  valor:”Kevin”,
                                  order: 1
                       },
                       idade:{
                                  valor:”10”,
                                  order: 3
                       },
                       robby:{
                                  valor:”natação”,
                                  order: 4
                       },

           }
}

 

 

depois tento:

 

db.collection.find({"_id:1"}).sort({"properties.$.order":1});

 

Infelizmente, parece que ele não ordena os subdocumentos. Aparentemente, há uma fix que contempla isso na futura versão 1.9.1. Sorting nested objects in array

 

Espero que alguém possa confirmar isso, ou se existe uma solução! :!: :!:

 

Grato!! :lol:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo o pq deste $ ?? em db.collection.find({"_id:1"}).sort({"properties.$.order":1});

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá, Suíssa! Grato por responder.

 

No caso do operador "$", utilizei-o, apenas, para simular um campo coringa. Na realidade, o comando executa sem erro. Inclui o caractger por intuição. rsrs. Seria bom se tivesse como procurar subfields comuns com pais diferentes ($). E ainda poder classificar por subcampos.

 

Você acha que tem como?? :)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Por exemplo procurar todos que possuem order = 1?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.