Je peux utiliser l' Like
opérateur SQL en utilisant pymongo
,
db.test.find({'c':{'$regex':'ttt'}})
Mais comment puis-je utiliser Not Like
Operator?
j'ai essayé
db.test.find({'c':{'$not':{'$regex':'ttt'}})
mais j'ai eu une erreur:
OperationFailure: $ not ne peut pas avoir de regex
$not
and$regex
en combinaison semble fonctionner pour moi.Réponses:
À partir de la documentation :
EDIT (@idbentley):
{$regex: 'ttt'}
est généralement équivalent à/ttt/
dans mongodb, donc votre requête deviendrait:EDIT2 (@KyungHoon Kim):
En python , ci-dessous on fonctionne:
la source
{$regex: 'ttt'}
est généralement équivalent à/ttt/
mongodb, donc votre requête deviendraitdb.test.find({c: {$not: /ttt/}}
.'c':{'$not':re.compile('ttt')}
. Bien sûr, vous devez importer reVous pouvez faire avec regex qui ne contient pas un mot. En outre, vous pouvez utiliser
$options => i
pour le cas de recherche insensible.Ne contient pas
string
Insensible à la casse exacte
string
Commence avec
string
Se termine par
string
Contient
string
Conservez-le comme signet et comme référence pour toute autre modification dont vous pourriez avoir besoin. http://www.cheatography.com/davechild/cheat-sheets/regular-expressions/
la source