MinKey(最小键)
最后更新:2026-10-09
MinKey(最小键)
MinKey是BSON特殊类型,比所有其他类型的值都小,与MaxKey相对。常用于分片键设计(如把特定数据强制排到第一个chunk)、排序哨兵、聚合占位等特殊场景。它是单例值,构造用`MinKey()`。业务代码中极少直接使用。
| 分类 | BSON 类型 |
|---|---|
| MongoDB 版本 | 1.0+ |
| 示例语言 | mongosh (Shell) |
📝 语法
MinKey()
{ $group: { _id: MinKey(), total: { $sum: "$amount" } } }
返回值:返回MinKey单例值
▶ 示例
请在本地安装的 mongosh 中执行以下命令(需已启动 mongod):
// MinKey:聚合中作为占位键
use shop
db.sales.aggregate([
{ $group: { _id: MinKey(), total: { $sum: '$amount' } } }
])
运行结果:
{ _id: MinKey(), total: 12900 }
📌 注意事项
- MinKey小于一切值(含null、数字、字符串)
- 与MaxKey配合作分片边界
- 业务中极少直接使用
🏷️ 相关标签
💡 相关案例
📚 相关教程
❓ 常见问题
QMinKey有什么用?
A分片边界、排序哨兵、聚合分组占位等特殊场景。
QMinKey比null小吗?
A小。BSON比较顺序中MinKey最小、MaxKey最大。
Q查询里能用MinKey吗?
A可以,如{ $gte: MinKey() }匹配所有值。