有没有办法在MongoDB的mapreduce Javascript或shell中的两个NumberInt或NumberLongs上执行整数运算?如你所见,我得到:
> typeof (NumberInt(1) + NumberInt(1))
number
# (and this is here sort of just to gripe)
> NumberLong(2) == NumberInt(2)
false
> 2==NumberLong(2)
true
> 2==NumberInt(2)
true
相关:
答案 0 :(得分:1)
由于这些实际上是对象,请使用他们的方法:
var num1 = NumberLong(2);
var num2 = NumberInt(2);
num1.toNumber() == num2.toNumber()
将返回true
。以同样的方式:
var num1 = NumberLong(2);
var num2 = NumberInt(3);
num1.toNumber() == num2.toNumber()
返回false
,因为它们不相等:
num1.toNumber() < num2.toNumber()
也有效true
所以你基本上需要使用这种方法以这种方式进行投射。