Maison  >  Article  >  développement back-end  >  Cypher trouve (plusieurs) nœuds "les plus bas"

Cypher trouve (plusieurs) nœuds "les plus bas"

WBOY
WBOYavant
2024-02-08 20:54:11634parcourir

Cypher 查找(多个)“最低”节点

Contenu de la question

Cas :

Mon nœud Categories Comme indiqué ci-dessous, j'ai créé la relation de la catégorie au parent.

CREATE(p1:Categorie {
  id: 2,
  parent_id: 1,
  name: "Kids",
  is_active: true ,
  position: 1,
  level: 1,
})
CREATE(c1:Categorie {
  id: 5,
  parent_id: 2,
  name: "Toys",
  is_active: true ,
  position: 1,
  level: 2,
})

//New root category
CREATE(p2:Categorie {
  id: 9,
  parent_id: 1,
  name: "Holiday",
  is_active: true ,
  position: 1,
  level: 1,
})
CREATE(c2:Categorie {
  id: 12,
  parent_id: 9,
  name: "Water",
  is_active: true ,
  position: 1,
  level: 2,
})


CREATE(c1)-[:CHILD_OF]->(p1)
CREATE(c2)-[:CHILD_OF]->(p2)

Ensuite, mes produits ont un tableau categorie_ids comme celui-ci :

<code>{
    "sku": "abc",
    "name": "Electric boot",
    "categorie_ids": [ 
        1,
        5,
        9,
        12
    ]
}
</code>

L'API renverra tous les identifiants où se trouve le produit "dans". Toutes les relations sont tellement déroutantes pour moi. Cet exemple est minime, mais en réalité il peut y avoir jusqu'à 20 relations par produit.

Questions/Problèmes :

Je souhaite créer une relation avec le nœud le plus bas de la catégorie. Dans ce cas, le produit comporte deux catégories principales et donc deux catégories inférieures. Je veux donc créer une relation avec les identifiants 12 et 5.

Je n’arrive tout simplement pas à comprendre la recherche de mot de passe. Quelqu'un peut-il expliquer cela ?


Bonne réponse


Vous regardez essentiellement la requête suivante :

Selon votre modèle vous envisagez d'ajouter un prédicat que le nœud de catégorie ne possède pas INCOMING 类型的关系 CHILD_OF

WITH [1,5,9,12] AS categoryIds
MATCH (n:Categorie)
WHERE n.id IN categoryIds
AND NOT ()-[:CHILD_OF]->(n)
RETURN n.id

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer