mongodb - MongoDB - 对数组的“包含”查询的奇怪行为差异
问题描述
我有一个名为 test 的集合,其中存储了以下文档:
{
"_id" : ObjectId("5c128451f6e8eb70b846018f"),
"NumericValues" : [
112233,
112244
],
"StringValues" : [
"112233",
"112244"
]}
当我对 StringValues 执行查询过滤时,我得到了匹配的记录。
此返回 1 条记录:
db.getCollection('test').find({"StringValues":"112233"})
但是,以下查询均不返回任何记录...
db.getCollection('test').find({"NumericValues":112233})
db.getCollection('test').find({"NumericValues": { $eq: 112233}})
这怎么可能?为什么过滤字符串数组有效,而不是数值数组?(我在 Azure Cosmos 中运行 MongoDB 3.2.0)
解决方案
推荐阅读
- powershell - KeyVault 与 Azure Functions(powershell 运行时)的集成不起作用
- dotnetnuke-7 - Dnn 模块未出现在查看模式中
- sql - 如何将选择联合转换为十进制?
- python - MIT Python course 6.00.1X Lecture 8 使用异常子句将字母成绩转换为数字成绩
- python-3.x - Python midi 模块 - 无法构建到 exe 中
- php - 如何根据角色限制 Laravel 登录?
- kubernetes - 在 openshift OKD 中使用 initContainer 初始化配置
- azure-devops - Azure DevOps:资产文件没有“.NETCoreApp,Version=v2.2/linux-x64”的目标
- datasource - 如何将多个数据源从一台服务器添加到画面
- python - 具有非线性源项/势项的扩散反应 pde