Neo4j - Clause Where
Comme SQL, Neo4j CQL a fourni la clause WHERE dans la commande CQL MATCH pour filtrer les résultats d'une requête MATCH.
Syntaxe
Voici la syntaxe de la clause WHERE.
MATCH (label)
WHERE label.country = "property"
RETURN label
Exemple
Avant de continuer avec l'exemple, créez cinq nœuds dans la base de données comme indiqué ci-dessous.
CREATE(Dhawan:player{name:"shikar Dhawan", YOB: 1985, runs:363, country: "India"}
CREATE(Jonathan:player{name:"Jonathan Trott", YOB:1981, runs:229, country:"South Africa"}
CREATE(Sangakkara:player{name:"Kumar Sangakkara", YOB:1977, runs:222,
country:"Srilanka"})
CREATE(Rohit:player{name:"Rohit Sharma", YOB: 1987, runs:177, country:"India"})
CREATE(Virat:player{name:"Virat Kohli", YOB: 1988, runs:176, country:"India"})
CREATE(Ind:Country {name: "India", result: "Winners"})
Voici un exemple de requête de chiffrement qui renvoie tous les joueurs (nœuds) appartenant au pays Inde en utilisant la clause WHERE.
MATCH (player)
WHERE player.country = "India"
RETURN player
Pour exécuter la requête ci-dessus, procédez comme suit -
Step 1- Ouvrez l'application de bureau Neo4j et démarrez le serveur Neo4j. Ouvrez l'application de navigateur intégrée de Neo4j à l'aide de l'URLhttp://localhost:7474/ comme indiqué dans la capture d'écran suivante.
Step 2 - Copiez et collez la requête souhaitée dans l'invite du dollar et appuyez sur le bouton de lecture (pour exécuter la requête) mis en évidence dans la capture d'écran suivante.
Résultat
Lors de l'exécution, vous obtiendrez le résultat suivant.
Clause WHERE avec conditions multiples
Vous pouvez également utiliser la clause WHERE pour vérifier plusieurs conditions.
Syntaxe
Voici la syntaxe pour utiliser la clause WHERE dans Neo4j avec plusieurs conditions.
MATCH (emp:Employee)
WHERE emp.name = 'Abc' AND emp.name = 'Xyz'
RETURN emp
Exemple
Voici un exemple de requête de chiffrement qui filtre les nœuds de la base de données Neo4j en utilisant deux conditions.
MATCH (player)
WHERE player.country = "India" AND player.runs >=175
RETURN player
Pour exécuter la requête ci-dessus, procédez comme suit -
Step 1- Ouvrez l'application de bureau Neo4j et démarrez le serveur Neo4j. Ouvrez l'application de navigateur intégrée de Neo4j à l'aide de l'URLhttp://localhost:7474/ comme indiqué dans la capture d'écran suivante.
Step 2 - Copiez et collez la requête souhaitée dans l'invite du dollar et appuyez sur le bouton de lecture (pour exécuter la requête) mis en évidence dans la capture d'écran suivante.
Résultat
Lors de l'exécution, vous obtiendrez le résultat suivant.
Utilisation de la relation avec la clause Where
Vous pouvez également utiliser la clause Where pour filtrer les nœuds à l'aide des relations.
Exemple
Supposons que nous ayons le graphique suivant dans la base de données.
Voici un exemple de requête de chiffrement pour récupérer le meilleur buteur de l'Inde en utilisant la clause WHERE comme indiqué ci-dessous.
MATCH (n)
WHERE (n)-[: TOP_SCORER_OF]->( {name: "India", result: "Winners"})
RETURN n
Pour exécuter la requête ci-dessus, procédez comme suit -
Step 1- Ouvrez l'application de bureau Neo4j et démarrez le serveur Neo4j. Ouvrez l'application de navigateur intégrée de Neo4j à l'aide de l'URLhttp://localhost:7474/ comme indiqué dans la capture d'écran suivante.
Step 2 - Copiez et collez la requête souhaitée dans l'invite du dollar et appuyez sur le bouton de lecture (pour exécuter la requête) mis en évidence dans la capture d'écran suivante.
Résultat
Lors de l'exécution, vous obtiendrez le résultat suivant. Ici, vous pouvez observer que Neo4j a renvoyé le nœud, qui a la relation TOP_SCORER_OF au pays avec le nœud ayant le nom Inde.