0

単純なクエリが私のmongodbデータベースで機能していません。

コンソールにいるとき、私は実行します

db.quads.find({});

'quads'コレクションのすべてのドキュメントを取得します。そのうちの1つは次のとおりです。

{ "subject" : "u:http://dbpedia.org/resource/Tim_Berners-Lee", "predicate" : "u:http://dbpedia.org/ontology/abstract", "object" : "l:\"Sir Timothy John Berners-Lee KBE, OM, FRS (TimBL ou TBL) é um físico britânico, cientista da computação e professor do MIT. É o criador da World Wide Web, tendo feito a primeira proposta para sua criação em março de 1989. Em 25 de dezembro de 1990, com a ajuda de Robert Cailliau e um jovem estudante do CERN, implementou a primeira comunicação bem-sucedida entre um cliente HTTP e o servidor através da internet. Berners-Lee é o diretor do World Wide Web Consortium (W3C), que supervisiona o desenvolvimento continuado da web. Também é o fundador da Fundação World Wide Web e é um pesquisador sênior e titular e fundador da cadeira de 3Com no Laboratório de Inteligência Artificial e Ciência da Computação do MIT (CSAIL). É um diretor da The Web Science Research Initiative (WSRI) e um membro do conselho consultivo do Centro de Inteligência Coletiva do MIT. Em abril de 2009, foi eleito como membro da Academia Nacional de Ciências dos Estados Unidos, sediada em Washington, D.C. Em 2004, Timothy venceu o Millennium Technology Prize, o que lhe rendeu um milhão de euros.\"@pt", "graph" : "u:http://example.org/people", "_id" : ObjectId("5134aa893fff1d490400009c") }

このようなクエリを実行すると予想されます...

db.quads.find({"subject" : "u:http://dbpedia.org/resource/Tim_Berners-Lee"});

...値が「u: http ://dbpedia.org/resource/Tim_Berners-Lee」の「subject」フィールドを持つドキュメントがあるため、少なくとも1つのドキュメントを取得します。

しかし、何も得られません...ワイルドカードクエリも試しました:

db.quads.find({"subject" : "/.*Tim_Berners-Lee.*/"});

無駄に...私は何が間違っているのですか?

ありがとう!

4

1 に答える 1

1

私は両方のアプローチを使用して期待される結果を得ることができました:

db.quads.find({"subject":/.*Tim_Berners-Lee.*/}); およびdb.quads.find({"subject": "u:http ://dbpedia.org/resource/Tim_Berners-Lee "});

シェルウィンドウのエンコーディングの問題に直面している可能性があります。言ったとおりにすべてのドキュメントを一覧表示し、findコマンドの入力値としての出力を確認してください。可能であれば、別のマシンから接続するか、Windowsを使用している場合はcygwinを試すか、Linuxマシンから接続してみてください。

よろしく、Moacy

于 2013-04-27T20:18:01.773 に答える