查找字段数据类型不是NaN的所有记录
Find all records with field data type which is not NaN
我想找到与这个问题完全相反的问题,我如何找到MongoDB中具有NaN字段的所有文档?
关键字$not
需要一个文档,并且我成功地使用了type
,猜测NaN将是双精度:
db.collection.find({'key2': {$not : {$type :1}}})
我设法找到的另一种方法是使用$nin
:
db.collection.find({'key1': NaN, 'key2' : { $nin : [NaN]}}}))
有更好的方法吗?你能指出来吗?
您可以使用$ne
操作符查找字段不包含特定值的文档。在shell中使用$ne
和NaN
工作得很好:
db.collection.find({key1: {$ne: NaN}})
首先,祝贺您对数据这样做。但是这里的简单情况是构建一个表达式,也出现为NaN
(当然在JavaScript中),并在您的查询过滤器中使用它。
:
db.collection.find({'key1': parseInt("a"), 'key2' : { $nin : [parseInt("a")] } } )
作为"Not a Number"上的parseInt()
将产生常数结果,因此满足查询的匹配条件。
在其他地方,NaN
将被计算为"Double"或BSON类型1,您将需要其他逻辑来区分该"类型"与其他可能的"Double"值。
相关文章:
- 使用Dnamics CRM 2011中的JavaScript读取子网格的所有记录,而不考虑活动页面
- AngularJs对所有页面中的所有记录进行排序
- 有没有一种方法可以在控制台关闭的情况下让console.log()在IE中记录消息
- JavaScript NaN equvialence
- window.location替换并传递URL历史记录条目中的变量
- Javascript历史记录转换为php行
- JavaScript,PHP-用JavaScript将多个数据库记录发送到变量或表
- 猫鼬在特定记录中查找嵌套记录
- 浏览器何时记录历史记录
- 将一个表的id与另一个表中的user_id进行匹配,以获取mysql中的记录
- 如何为排除无穷大和NaN的数字声明Flow类型
- 更新成员数据模型中的记录列表
- 为什么我在这个javaScript代码中使用NaN
- 如何防止Math.max()返回NaN
- 如何使用提交按钮搜索表中的记录
- 正在OrientDB中嵌入函数中的记录
- 函数将输出nan而不是数字,为什么
- 使用Rails 3中的AJAX删除记录
- 查找字段数据类型不是NaN的所有记录
- 尝试记录json值时出现NaN错误