$mod
语法
- { <字段名>: { $mod: <值> } }
说明
返回取模的结果。原始值为数组类型时对每个数组元素执行该操作,非数字类型返回 null 。
示例
在集合 foo.bar 插入1条记录:
- > db.foo.bar.insert( { "a": 13 } )
SequoiaDB shell 运行如下:
- 作为选择符使用,返回字段“a”对10取模的结果:
- > db.foo.bar.find( {}, { "a": { "$mod": 10 } } )
- {
- "_id": {
- "$oid": "582568c42b4c38286d00001f"
- },
- "a": 3
- }
- Return 1 row(s).
- 与匹配符配合使用,匹配字段“a”对10取模之后值为3的记录:
- > db.foo.bar.find( { "a": { "$mod": 10, "$et": 3 } } )
- {
- "_id": {
- "$oid": "582568c42b4c38286d00001f"
- },
- "a": 13
- }
- Return 1 row(s).
Note:1. 不能对零取模。2. 由于操作系统提供的浮点数(IEEE754浮点数标准)的特性,浮点数的模运算结果是不准确的,超出15位有效数字的浮点数的结果甚至会严重偏离准确值,所以不建议对浮点数进行模运算,尤其是对浮点数模运算的结果进行“==”和“!=”的判断。