1

誤って変数を配列として作成してしまいました。配列の最初の要素を削除して、配列の型を単純な文字列に変更したいと考えています。私はmongoの型を整数から文字列に変更し、 $set を使用して文字列を配列に変更して遊んでいますが、このバリエーションの解決策を見つけることができません.

以下はドキュメントの一部です。

db.test.find({"ids":"XXX"}, {"accountability":1}).pretty()

{
"_id" : ObjectId("524c26006f73207e0d977522"),
    "accountability" : [
        {
            "environment" : null,
            "performance" : null,
        }
    ]
}

ただし、インデックスを作成しようとすると、次のように表示されます。

db.test.find({"ids":"XXX"}, {"accountability.performance":1}).pretty()
{
"_id" : ObjectId("524c26006f73207e0d977522"),
"institution" : {
    "accountability" : [
        {
            "performance" : null
        }
    ]
}
}


db.test.find({"ids":"XXX"}, {"institution.accountability.0":1}).pretty()
{
"_id" : ObjectId("52435f0f6f73205f7d37a2b0"),
    "accountability" : {

    }
}

そして最後に:

db.test.find({"ids":"XXX"}, {"accountability.0.performance":1}).pretty()
{
"_id" : ObjectId("524c26006f73207e0d977522"),
    "accountability" : [
        {

        }
    ]
}

アドバイスをいただければ幸いです。ありがとうございました!

4

0 に答える 0