Académique Documents
Professionnel Documents
Culture Documents
Pour définir plusieurs critères, il suffit juste d'utiliser plusieurs propriétés au sein de
l'objet de recherche :
1{
2 $or: [
3 { critère1: "…" },
4 { critère2: "…" }
5 ]
}
Exemple : Récupérer tous les étudiants portant le nom "aouini", ou, portant le
prenom "TTT":
MongoDB Enterprise >db.etud.find({$or:[{nom:"aouini"},{prenom:"TTT"}]})
Conditio
Propriété
n
< $lt
<= $lte
> $gt
>= $gte
!= $ne
1{ old: { $lt: 40 } }
MongoClient.connect(url, function(err, db) {
if (err) throw err;
var dbo = db.db("mydb");
var query = { address: "Park Lane 38" };
dbo.collection("customers").find(query).toArray(function(err, result) {
if (err) throw err;
console.log(result);
db.close();
});
});
3DSI Mme Gaâbeb
2. Projection
//Projection Nom Adresse
var MongoClient = require('mongodb').MongoClient;
var url = "mongodb://localhost:27017/";
3. Sélecteurs de requête
Nom La description
$eq Syntaxe: {champ: {$eq: valeur} }
Exemple:
Syntaxe: { Champ: {$gt: valeur} }
$gt
Exemple:
Nom La description
$gte Syntaxe: {Champ: {$gte: valeur} }
Exemple:
Correspond aux valeurs qui sont inférieures (less than ) à une valeur spécifiée.
$lt Syntaxe: {champ: {$lt: valeur} }
Exemple:
Correspond aux valeurs inférieures ou égales (less than or equal) à une valeur
spécifiée.
$lte Syntaxe: {champ: {$lte: valeur} }
Exemple:
Correspond à toutes les valeurs qui ne sont pas égales(not equal) à une valeur
spécifiée.
$ne
Syntaxe: {champ: {$ne: valeur} }
Exemple:
Nom La description
Syntaxe :
Exemple:
Syntaxe :
$nin {champ :{$nin :[< valeur1 >,< valeur2 > , ... <
valeurN > ] } }
Exemple:
Nom La description
$or Joint les clauses de requête avec une logique OR. Renvoie tous les documents
qui correspondent aux conditions de l'une ou l'autre clause.
Exemple1:
db.collection("etud").find(
3DSI Mme Gaâbeb
Nom La description
{
$or: [
{ nom: "m1" },
{ prenom: "m2" }
]
}).toArray(function (error, results) {
if (error) throw error;
results.forEach(function(obj, i) {
console.log(
"Nom : " + obj.nom + "\n"+
"prenom : " + obj.prenom
);
Exemple1:
db .collection("produit").find({$or:[{quantite:{ $lt:
20 } }, { prix: 10 } ] } )
Joint les clauses de requête avec une logique AND. Renvoie tous les documents
qui correspondent aux conditions des deux clauses.
Syntaxe:
$and Exemple:
Tous les produits dont le champ prix existe ET la valeur du prix n'est pas
égale à 1.99
3DSI Mme Gaâbeb
Nom La description
Syntaxe :{ champ: { $not: { <expression> } } }
$not Cette requête sélectionnera tous les documents de la collection produit où :
Joint les clauses de requête avec une logique NOR :renvoie tous les documents
qui ne correspondent pas aux deux clauses.(ni l'un ni l'autre)
Syntaxe
Nom La description
Nom La description
Option La description
m Pour les modèles qui incluent des ancres (^ pour le début, $ pour la
fin), fait correspondre au début ou à la fin de chaque ligne pour les
chaînes avec des valeurs multilignes. Sans cette option, ces ancres
3DSI Mme Gaâbeb
Option La description
Exemple :
db.collection("etud").find(
{
//les prenoms qui finit par ns
prenom: { $regex:/ns$/}
})
db.collection("etud").find({
//les prenoms qui commencent par a minuscule
prenom: {$regex:/^a/}
})
db.collection("etud").find({
//les prenoms qui commencent par a ou A
prenom: {$regex:/^a/i}
})
results.forEach(function(obj, i) {
console.log("#######")
console.log(
"Nom : " + obj.nom + "\n"+ //
"prenom : " + obj.prenom //
);
})})