1

これはmongodbにあります

{cod_com:'WWWOAN',
     cod_prod[{prod:'proda',info:'hola mundo'},{prod:'pacda',info:'hola mundo'},{prod:'prcdb',info:'hola mundo'}]
}
{cod_com:'WWWOA2',
     cod_prod[{prod:'prdda',info:'hola mundo'},{ccod:'prcda',info:'hola mundo'}]
}
{cod_com:'WWWOA1',
     cod_prod[{prod:'prcda',info:'hola mundo'},{aaad:'prcda',info:'hola mundo'}]
}

cod_prod 変数内の情報を取得する必要があるため、2 つのステップで作業しています

まず、cod_prod の所有者に問い合わせます

db.collection.findOne({cod_com:'WWWOA1'});

存在する場合は、必要な cod_prod を照会します

db.collection.findOne({'cod_prod.prod':'prcda'});

基本的には 2 回クエリを実行します。1 回目は製品の所有者に、2 回目は検索している製品の情報です...

問題は、製品を直接検索する方法があるということです???

これは使えない…

db.collection.findOne({'cod_prod.prod':'prcda'});

異なる所有者が同じ製品を持っているため...最初に所有者を取得し、次に製品を取得します....

誰かがより良いアプローチを持っていますか?? または情報を取得する別の方法??? tnx

4

1 に答える 1

1

次のようにクエリする場合:

db.collection.findOne({'cod_com':'WWOA1', 'cod_prod.prod':'prcda'});

必要な結果が得られるはずです。

于 2013-02-23T23:06:31.047 に答える