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

相关推荐
lsc_blog4 小时前
年终自评别贴提交记录,把技术产出讲成变化
数据库·面试·职场和发展·跳槽·求职招聘
Zan12 小时前
SQLite + SQLx 实战:为什么已经发布的数据库迁移文件,绝对不能再修改?
数据库·后端·面试
这个DBA有点耶13 小时前
数据同步的三个工程底线:DDL同步、断点续传、一致性校验——开源CDC的边界与KFS的路径
数据库·dba·代码规范
SelectDB14 小时前
列式存储为什么适合分析类负载?原理、限制与日志场景应用
数据库
数据库小学妹15 小时前
MySQL大字段治理:行溢出机制、覆盖索引与拆表
数据库·mysql·性能优化
爱吃奥利奥_wen15 小时前
SQL Server 基础语法详解:从建库建表到约束与增删改查
服务器·数据库·oracle
我不会起名字32216 小时前
消费回调固定 return nil:错误传播与 Kafka 位点提交的区别
后端·mongodb·kafka·go·im·故障排查
这个DBA有点耶16 小时前
MySQL 8.0不可见索引:删索引怕出事,不删又拖慢写入——中间态怎么用?
数据库·mysql·代码规范
测试界的小码农17 小时前
【图数据库实战进阶(01):从零认识 Neo4j,搭建第一个图数据库项目】
数据库·neo4j