• $mod
    • 语法
    • 说明
    • 示例

    $mod

    语法

    1. { <字段名>: { $mod: <值> } }

    说明

    返回取模的结果。原始值为数组类型时对每个数组元素执行该操作,非数字类型返回 null 。

    示例

    在集合 foo.bar 插入1条记录:

    1. > db.foo.bar.insert( { "a": 13 } )

    SequoiaDB shell 运行如下:

    • 作为选择符使用,返回字段“a”对10取模的结果:
    1. > db.foo.bar.find( {}, { "a": { "$mod": 10 } } )
    2. {
    3. "_id": {
    4. "$oid": "582568c42b4c38286d00001f"
    5. },
    6. "a": 3
    7. }
    8. Return 1 row(s).
    • 与匹配符配合使用,匹配字段“a”对10取模之后值为3的记录:
    1. > db.foo.bar.find( { "a": { "$mod": 10, "$et": 3 } } )
    2. {
    3. "_id": {
    4. "$oid": "582568c42b4c38286d00001f"
    5. },
    6. "a": 13
    7. }
    8. Return 1 row(s).

    Note:1. 不能对零取模。2. 由于操作系统提供的浮点数(IEEE754浮点数标准)的特性,浮点数的模运算结果是不准确的,超出15位有效数字的浮点数的结果甚至会严重偏离准确值,所以不建议对浮点数进行模运算,尤其是对浮点数模运算的结果进行“==”和“!=”的判断。