MongoDB聚合运算符:$toHashedIndexKey

MongoDB聚合运算符:$toHashedIndexKey

文章目录

$toHashedIndexKey计算并返回输入表达式的哈希值,其使用的哈希函数与MongoDB创建哈希索引相同。哈希函数将键值或字符串映射到固定大小的数值。

语法

js 复制代码
{ $toHashedIndexKey: <key or string to hash> }

举例

角度的双曲正切

使用下面的脚本创建trigonometry集合,包含一个文档,存储了以度为单位的角度:

在聚合管道中,可以使用$toHashedIndexKey计算字符串的散列值。本例计算字符串"string to hash"的散列值:

js 复制代码
db.aggregate(
   [
      { $documents: [ { val: "string to hash" } ] },
      { $addFields: { hashedVal: { $toHashedIndexKey: "$val" } } }
   ]
 )

执行的结果为:

js 复制代码
[ { val: 'string to hash', hashedVal: Long("763543691661428748") } ]

**注意:**与散列索引不同,$toHashedIndexKey聚合操作符不考虑排序规则,这意味着该操作符产生的哈希值可能与基于相同数据的哈希索引的哈希值不一致。

相关推荐
m0_51509842几秒前
C#怎么使用并发集合 C#ConcurrentDictionary和ConcurrentQueue线程安全集合怎么用【进阶】
jvm·数据库·python
yejqvow122 分钟前
Redis如何处理集群网络分区_理解少数派网络孤岛由于无法获得选票而停止写入的保护机制
jvm·数据库·python
21439654 分钟前
CSS Grid布局如何解决图片溢出网格单元_设置object-fit与网格尺寸
jvm·数据库·python
qq_654366984 分钟前
C#怎么实现动态加载DLL C#如何在运行时动态加载和卸载程序集调用其中的方法【进阶】
jvm·数据库·python
2301_764150565 分钟前
WooCommerce 用户登录状态控制元素显隐的 CSS 实现方案
jvm·数据库·python
m0_743623926 分钟前
CSS如何解决响应式布局中文字溢出_通过text-overflow-ellipsis处理
jvm·数据库·python
2401_835956816 分钟前
Go语言中 & 与 -:指针取址与解引用的完整解析
jvm·数据库·python
2401_837163897 分钟前
如何为容器内多个列表实现统一滚动条
jvm·数据库·python
m0_674294648 分钟前
C#怎么清空Dictionary字典_C#如何管理内存集合【基础】
jvm·数据库·python
2402_854808379 分钟前
MongoDB GridFS分片时选择什么键比较好
jvm·数据库·python