我有玩家和遊戲節點類型....玩家可以邀請其他玩家參加比賽。
一旦玩家一個將邀請玩家乙它看起來就像是:
不是運營商查詢密碼neo4j
A-[:INTERACT]->game<-[:INTERACT]-B , game.initiator = ID(A) , game.state = 'INVITE'
正如你可以看到我使用的是遊戲裏面的屬性來表示誰邀請誰。
遊戲可以在許多州。
對於一個給定的玩家我需要一個查詢來檢索除了這個狀態= INVITE並且他發起他們之外的所有遊戲。
試過以下,但沒有成功,即使它聽起來像是簡單的情況:
START playerA = node()
match playerA-[:INTERACT]->game<-[:INTERACT]-otherPlayer
where not(game.state = 'INVITE' and game.initiator = ID(playerA))
return game
例如: http://console.neo4j.org/r/fkpoht
START playerB = node(15)
MATCH playerB-[:INTERACT]->game<-[:INTERACT]-PlayerA
WHERE NOT (game.state = 'INVITE' AND game.initiator = ID(playerB))
RETURN game
爲什麼上面的查詢不會返回遊戲?第一個條件是真的秒是假的沒有(真的& false)=真...
這是什麼方法來做這個簡單的查詢權?你的回答非常感謝。
在你的查詢中,每個帶有狀態<> INVITE的遊戲都不會返回,這不是我所需要的。 –
你是什麼意思,你不能嘗試它?所有查詢所需的遊戲屬性都存在... –
K我現在可以看到控制檯屬性的好了。無法弄清楚NOT,但編輯我的查詢與解決方法 – Luanne