Mongo获取id以某个数字结尾的用户

use*_*428 3 php regex find mongodb

在mongo中,我正在尝试查询id以某个数字结尾的用户.这个数字是我传入的参数.

所以,如果我有4个用户[3544,42345,66452,7348],我怎么能查询和刚刚得到用户7348如果我是用户的ID在8结束只是感兴趣.

我在这里看了一下,但找不到对此有用的东西:

http://www.mongodb.org/display/DOCS/Advanced+Queries#AdvancedQueries-RegularExpressions

更新:执行此操作是PHP,期望值是int,而不是字符串.我的where子句如下所示:$ where = array('uid'=>'/ 8 $ /');

nig*_*f0x 7

如果要查找id为数字8的用户,则只需执行以下操作:

db.users.find( { id : /[8]$/ } );
Run Code Online (Sandbox Code Playgroud)

$匹配到行尾.就像^匹配行的开头一样.请参阅进一步的细节

要查找int类型数据字段的最后一位,您必须使用$ mod运算符.


Ser*_*sev 6

这应该这样做:

db.users.find( { id : { $mod : [ 10 , 8 ] } } )
Run Code Online (Sandbox Code Playgroud)