1
ch2 2021-12-08 11:16:06 +08:00
使用 aggregate 聚合查询
|
3
libook 2021-12-08 11:52:29 +08:00
"key3":{$exists:false}
MongoDB 虽然可以插入任意结构的 document ,但是是在数据库操作本身不大关心 document 结构的基础上的,否则还是要有一个统一的 schema ,至少能清楚最多有哪些字段,你根据 schema 来梳理出不想要的字段,在查询条件里标明要求这些字段不存在的 document ,就可以了。 |
4
Rkls OP @libook 可是在实际的场景中 key 其实是文字,我需要处理的是传入的 map<string,string>,所以我其实并不清楚数据库中的 key 可能出现哪些字段,所以也就没办法使用"key3":{$exists:false},想要知道有 key3 的话,只有通过一次 find ,找到对应的所有_id,然后再比对是否有多余的 key 了
|
5
Rkls OP @libook 可是在实际的场景中 key 其实是文字,我需要处理的是传入的 map<string,string>,所以我其实并不清楚数据库中的 key 可能出现哪些字段,所以也就没办法使用"key3":{$exists:false},想要知道有 key3 的话,只有通过一次 find ,找到对应的所有_id,然后再比对是否有多余的 key 了
|
6
libook 2021-12-08 12:33:30 +08:00
数据库的查询和索引机制是跟 key 强相关的,你可以去直接问 MongoDB 官方试试看有没有什么隐藏方法可以实现需求,个人经验来说,大多数据库从原理上都不支持这么做。
|