案例:
我的節點 Categories
如下所示,我建立了從類別到父級的關係。
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)
然後我的產品具有 categorie_ids
數組,如下所示:
<code>{ "sku": "abc", "name": "Electric boot", "categorie_ids": [ 1, 5, 9, 12 ] } </code>
API 會傳回該產品位於「in」的所有 id。對我來說,所有的關係都如此混亂。此範例是最小的,但實際上每個產品可能最多有 20 個關係。
疑問/問題:
#我想建立與類別中最低節點的關係。在這種情況下,產品有兩個主要類別,因此有兩個底部類別。所以我想創建與 id 12 和 5 的關係。
我就是無法理解密碼查詢。有人可以解釋一下嗎?
您基本上正在查看以下查詢:
根據您的模型,您正在考慮新增一個謂詞,類別節點不具有 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
以上是Cypher 尋找(多個)「最低」節點的詳細內容。更多資訊請關注PHP中文網其他相關文章!