0

我在 mongo shell 中执行了以下命令:

db.perscoll.insert({CT:{English:{genre:[{name:varGenre}]}}})

现在,我想使用 find() 查找集合中是否存在“English”的流派,它将返回 0(false) 或 1(true)。

db.perscoll.find({'CT.English.genre.name':varGenre}).count();

上面的命令返回 1(true),但是当我尝试使用下面提到的变量执行相同的命令时,它返回 0。

var eType = 'CT';
var lang = 'English';
var varGenre = 'Action';
var gnrNameChk = {}; 
gnrNameChk[eType+'.'+lang+'.genre.name'] = ''; 
print(gnrNameChk);
db.perscoll.find({gnrNameChk:varGenre}).count();

可能是什么问题?如何解决这个问题?我没有办法解决这个问题。

4

1 回答 1

0

尝试以下操作: var eType = 'CT'; var lang = '英语'; var varGenre = '动作'; var gnrNameChk = {}; gnrNameChk[eType+'.'+lang+'.genre.name'] = varGenere; 打印(gnrNameChk);db.perscoll.find(gnrNameChk).count();

希望对你有帮助!!!

于 2013-10-01T19:45:15.507 回答