Javascript 用于查找具有相同作者或至少一个匹配类别的书籍的MongoDB查询
我想找同一作者或至少有一个匹配类别的书 我的书是这样的Javascript 用于查找具有相同作者或至少一个匹配类别的书籍的MongoDB查询,javascript,node.js,mongodb,express,mongoose,Javascript,Node.js,Mongodb,Express,Mongoose,我想找同一作者或至少有一个匹配类别的书 我的书是这样的 const bookSchema=新模式( { 标题:{ 类型:字符串, 必填项:true }, 作者:{ 类型:字符串, 要求:正确, },类别:[{ 类型:Schema.Types.ObjectId, 参考:“类别” }] }); 我正在用这个。它不起作用 var moreBooks=wait Books.find({ $or: [ { 作者:book.author }, { 类别:{ $elemMatch:{ $in:book.
const bookSchema=新模式(
{
标题:{
类型:字符串,
必填项:true
},
作者:{
类型:字符串,
要求:正确,
},类别:[{
类型:Schema.Types.ObjectId,
参考:“类别”
}]
});
我正在用这个。它不起作用
var moreBooks=wait Books.find({
$or:
[
{
作者:book.author
},
{
类别:{
$elemMatch:{
$in:book.categories
}
}
}
]
});
正确的mongodb查询,用于查找具有相同作者或至少一个匹配类别的书籍。我的错误是用书代替书 你能用你传递的样本文档和输入编辑这个问题吗。你为什么要在$in
中使用$elemMatch
呢?我需要找到与图书“book”具有相同作者或一个共同类别的图书。