2011-12-09 65 views
0

假设我将数据库名称存储在数据库表中名为“title”的列中。 因此,“标题”将有像“老鹰敢于”,“社交网络”等值。检查列的所有值

现在,如果我搜索,让我们说,“敢在哪里”它应该返回我“ ”。

这里应该是什么where子句?

+0

什么数据库?你说“nosql”,但你也说“where子句”.... – Thilo

回答

3

1 /存储标签,如果您要根据标签来搜索(这是你的情况下): 实例文档:

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

然后使用$所有运算符来匹配所有的标签,

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' } }) 

将搜索在其中有 “鹰” 的所有电影。

+0

谢谢。这正是我正在寻找的。你选择的mongodb是完美的。这是我正在使用的。 – user644745