我在 MongoDB 中的文档结构如下:
{ _id : 1, tokens : [ "one","two","three","four","five","six","seven" ] }
{ _id : 2, tokens : [ "two","three","four","one","one","five","eight" ] }
{ _id : 3, tokens : [ "six","three","four","five","one","five","nine" ] }
平均而言,文档包含长度为 4500 项的令牌数组。
我需要进行某种模式匹配,其中我有完全匹配的标记数组,即假设我必须以完全匹配的顺序找到以下内容......
["three","four","five"]
...我希望我的查询向我提供以下文件...
{ _id : 1, tokens : [ "one","two","three","four","five","six","seven" ] }
{ _id : 3, tokens : [ "six","three","four","five","one","five","nine" ] }
即两个文档都包含我在我的数组中搜索的项目的确切顺序。
我搜索的数组可能有不同的长度,范围从 1 到 15 个标记。
我正在寻找以下内容:
- 这对 MongoDB 查询可行吗?我已经阅读并重新阅读并重新阅读了相当不错的文档,但找不到解决方案,例如使用 $all。
- 有没有更好的方法来存储这样的令牌来完成我需要的事情?
谢谢你的帮助。