Монго получают пользователей, чей идентификатор заканчивается определенной цифрой - PullRequest
3 голосов
/ 03 марта 2012

В монго я пытаюсь запросить пользователей с идентификатором, который заканчивается определенным номером. Этот номер является параметром, который я передаю.

Итак, если бы у меня было 4 пользователя [3544,42345,66452,7348], как я мог бы запросить и просто получить пользователя 7348, если меня просто интересовали пользователи, чей идентификатор заканчивается 8.

Я просмотрел здесь, но не могу найти точно, что подойдет для этого:

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

UPDATE: это PHP, и ожидаемые значения - int, а не строки. Мое предложение where выглядит так: $ where = array ('uid' => '/ 8 $ /');

Ответы [ 2 ]

7 голосов
/ 03 марта 2012

Если вы хотите найти пользователя, чей идентификатор заканчивается цифрой 8, вам просто нужно сделать это:

db.users.find( { id : /[8]$/ } );

$ соответствует концу строки. так же, как ^ соответствует началу строки. см. это для получения более подробной информации

Для нахождения последней цифры полей данных типа int вам необходимо использовать оператор $ mod.

6 голосов
/ 03 марта 2012

Это должно сделать это:

db.users.find( { id : { $mod : [ 10 , 8 ] } } )
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...