mongodb 查询逻辑 mongoose 和 nodejs
mongodb querying logic mongoose and nodejs
如果这是一个重复的问题,我事先表示歉意,但我找不到任何问题,而且我是初学者。
我正在为 db 的文档制作一个过滤器。
假设我想查询写在一个对象中的文档的 8 个字段
filter={key1:{lowerlimit: 'value', upperlimit:'value'},
key2:{lowerlimit: 'value', upperlimit:'value'},
key3:{lowerlimit: '', upperlimit:'value'},
key4:{lowerlimit: 'value', upperlimit:''},
key5:[],
key6:['value','value'],
key7:['value','value','value'],
key8:['value']}
现在如何写查询的逻辑,让没有指定值的字段不被查询。如果我按原样查询所有参数。不会显示任何文档,因为 'key5' 是空数组,并且在其上使用 $in 将导致没有文档。
当 key5
字段为空时,您希望从查询对象中删除该字段。
if (!filter.key5.length) {
delete filter.key5;
}
如果这是一个重复的问题,我事先表示歉意,但我找不到任何问题,而且我是初学者。
我正在为 db 的文档制作一个过滤器。
假设我想查询写在一个对象中的文档的 8 个字段
filter={key1:{lowerlimit: 'value', upperlimit:'value'},
key2:{lowerlimit: 'value', upperlimit:'value'},
key3:{lowerlimit: '', upperlimit:'value'},
key4:{lowerlimit: 'value', upperlimit:''},
key5:[],
key6:['value','value'],
key7:['value','value','value'],
key8:['value']}
现在如何写查询的逻辑,让没有指定值的字段不被查询。如果我按原样查询所有参数。不会显示任何文档,因为 'key5' 是空数组,并且在其上使用 $in 将导致没有文档。
当 key5
字段为空时,您希望从查询对象中删除该字段。
if (!filter.key5.length) {
delete filter.key5;
}