2017-07-04 58 views
0

我想选择集合中'age'属性大于给定年龄值的所有文档。

不工作,

age: { 
    $gt: given_age_value 
} 

做工精细,

age: { 
    $gt: +given_age_value 
} 

没有加号有什么区别?我无法在文档中找到它。

+0

+符号转换** ** given_age_value(如果它是不是一个有效的数字以外的东西)与数 – taha

回答

1

因为given_age_value不是一个数字(字符串可能是)并且在将它加到数字之前加上+。

{$gt: "1"}不起作用

{$gt: 1}将工作

{$gt: +"1"}将工作

+0

不该't {$ gt:+“1”}工作吗? – Sid24

+0

:D错误的拼写错误,确切地说,它的工作原理是因为+使它成为一个数字 – Fetrarij