我有以下Mongoose Schema
var People= new Schema({
firstName: String,
alias: [String]
});
我正在寻找一种方法来返回其中一个alias
字符串与匹配或在给定值中作为子字符串存在的所有文档。
例如:
{ firstName: Jon
alias: ['foo', 'fuchs']}
{ firstName: Ann
alias: ['bar', 'fuchsbar']}
{ firstName: Paul
alias: ['foobar']}
foob
,我想归还乔恩。 foobar
,我想回到Jon,Ann和Paul。 fuchs
,我想退回Jon。是否可以在Mongo中进行这样的子串查询?
答案 0 :(得分:1)
我建议您索引alias
字段,然后按以下方式为字符串“fuchs”生成查询:
db.people.find( { "alias" : { "$in" : [ "f","fu","fuc", "fuch", "fuchs" ] } } )
您需要自己生成$in
值的适当列表,我担心,查询语言中没有内置的功能。