1
我有一個看起來像這樣的圖形 -什麼是一個節點的密碼查詢,但不是另一個節點?
customer-hasOrder->order
order-hasLineItem->orderLineItem
orderLineItem-hasService->service
orderLineItem-providedOn->providedOnDate
orderLineItem-providedBy->vendor
我需要確定一個特定的服務,說了一個名爲「A」的服務是沒有其他的服務提供給一些客戶對某些日期,說一個叫服務「B」也是同一個供應商在同一天提供的。無論客戶在某一天提交多少訂單,情況都是如此。換句話說,每當客戶訂購「A」時,應始終在同一天由同一供應商在服務「B」提供服務「A」。
這是我必須找到了在同一天「A」,而不是「B」客戶 -
START
s1 = node:service(id="A"),
s2 = node:service(id = "B"),
MATCH
customer-[:hasOrder]->(o1)-[:hasLineItem]->li1-[:hasService]->s1,
customer-[:hasOrder]->(o2)-[:hasLineItem]->li2-[r?:hasService]->s2,
ol1-[:providedBy]->p1,
ol2-[:providedBy]->p2,
ol1-[:providedOn]->d1,
ol2-[:providedOn]->d2
WHERE
d1 = d2 AND p1 = p2 AND r is null
RETURN customer
我決定到這裏後我的鼻子開始流血,試圖找出Cypher支架爲此查詢。