检查列的所有值

时间:2011-12-09 08:47:47

标签: mongodb database nosql

假设我将电影名称存储在数据库表中名为“title”的列中。 因此,“标题”将具有诸如“老鹰敢于”,“社交网络”等价值观。

现在,如果我继续搜索,那就说“胆敢去哪里”它应该让我“老鹰敢于”。

这里的where条款应该是什么?

1 个答案:

答案 0 :(得分:3)

1 /存储标签,如果你想根据标签进行搜索(就像你的情况一样): 示例文档:

{ '_id' : 'xxxxxxxxx',
   'movie' : 'where eagles dare'
   'tags' : ['where','eagles','dare']
}

然后使用$ all运算符匹配所有标记,

http://www.mongodb.org/display/DOCS/Advanced+Queries#AdvancedQueries-%24all

db.movieCollection.find( { 'tags' : { $all: [ 'dare', 'where' ] } } );

2 /如果要使用模式搜索,请使用正则表达式:

http://www.mongodb.org/display/DOCS/Advanced+Queries#AdvancedQueries-RegularExpressions

db.movieCollection.find( { name : { $regex : '.*eagles.*', $options: 'i' } } )

将搜索所有包含“鹰”的电影。