Ich habe ein Feld _keywords
, die ein Array von Strings ist. Ich möchte Dokumente erhalten, von denen _keywords
Super-Set der Abfrage-Array sind.Mongodb Abfrage Teilmenge eines Arrays
Zum Beispiel:
db.article.insert({'_keywords': ['foo', 'foo1', 'foo2']})
Ich will diesen Rekord retrive wenn ich Teilmenge von [ 'foo', 'foo1', 'foo2'] abfragen, zum Beispiel: [ 'foo'] [ 'foo1 ‘, 'foo2']
EDIT: so etwas wie:
db.article.find({'_keywords': {$contains: array}})
Wie Dokumente retrive wo '_keywords 'enthält ein beliebiges Element im angegebenen Abfragearray. etwas wie: 'db.article.find ({_ Schlüsselwörter: {$ any: ['foo1', 'foo2']}})', die alle Dokumente mit _keywords zurückgibt, enthält 'foo1' oder 'foo2' – Jensen
Wie ich mich erinnern kann In diesem Fall können Sie '$ in' verwenden, zum Beispiel:' db.article.find ({_ keywords: {$ in: ['foo1', 'foo2']}} ''. Überprüfen Sie, ob dies richtig ist. – Dmitry
richtig, danke. – Jensen