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聚合操作符不考虑排序规则,这意味着该操作符产生的哈希值可能与基于相同数据的哈希索引的哈希值不一致。

相关推荐
yyuuuzz4 分钟前
谷歌云基础服务的入门认知
linux·运维·服务器·数据库·人工智能·github
超梦dasgg12 分钟前
工作中 MySQL 读写分离主从延迟:成因、影响、落地方案、生产实战处理
数据库·mysql
Wonderful U28 分钟前
Python+Django实战:打造智能生鲜果蔬进销存管理系统(采购入库、库存预警、销售开单、毛利统计)
数据库·python·django
Demon1_Coder33 分钟前
Day4-微服务-Seata默认事务
java·数据库·微服务
我是大猴子38 分钟前
Redis为什么不适合做持久化和DB的区别在哪里
数据库·redis·缓存
mN9B2uk1740 分钟前
数据库锁总结
数据库·oracle
闪电悠米1 小时前
黑马点评-秒杀优化-04_lua_and_db_fallback
服务器·开发语言·网络·数据库·缓存·junit·lua
Jun6261 小时前
QT(5)-第三方日志系统
开发语言·数据库·qt
骄马之死1 小时前
Redis 核心知识点总结
数据库·redis·缓存
basketball6161 小时前
Redis基础:6. 哨兵模式
数据库·redis·bootstrap