gpt4 book ai didi

mongodb - 如何在 mongodb 的 BinData 字段上通过部分二进制查找?

转载 作者:可可西里 更新时间:2023-11-01 10:43:25 25 4
gpt4 key购买 nike

我的 mongo 中有一个 BinData 字段,我需要使用部分信息对其进行查找。

假设我拥有的二进制数据如下所示:

{ "_id" : ObjectId("5480356518e91efd34e9b5f9"), "test" : BinData(0,"dGVzdA==") }

如果我执行此查询,我会得到结果:

> db.test.find({"test" : BinData(0,"dGVzdA==")})
{ "_id" : ObjectId("5480356518e91efd34e9b5f9"), "test" : BinData(0,"dGVzdA==") }

但是我想只用二进制对象的一部分找到它。
是否可以?

谢谢!

最佳答案

“部分”是一个模糊的术语 - 如果您要在大海捞针中的任何一点搜索连续的二进制数据 block (针),我认为您将需要一个非常不同的解决方案,也许是基于二进制数据的后缀树/后缀数组。

如果您想查找以特定字节开头的二进制数据,您可能需要考虑将数据存储为十六进制或 base64 编码字符串,并使用有根正则表达式作为索引使用。但这充满了自身的危险(填充、字节顺序等),而且非常丑陋……

有没有办法以 MongoDB 理解的方式存储二进制数据?那可能更容易...

关于mongodb - 如何在 mongodb 的 BinData 字段上通过部分二进制查找?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27292331/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com