我有一組標記爲Person和City的節點。節點citiy有兩個屬性Name和isInAustralia。一個人可以與City節點建立關係'hasHouse'關係。一個人可以擁有多個房屋在結果集中添加另一列而不是UNION
我想檢索數據的格式如下: 姓名|| CityInAustralia || CityOutside澳大利亞
假設一個人在澳大利亞的A,D,E市擁有房屋,在澳大利亞以外的城市B,C擁有房屋。
我得到的結果是:
亞當---- ----一乙
亞當---- d -----乙
亞當--- -E ----乙
亞當---- -----甲ç
亞當---- ---- dç
亞當---- E-- --- C
我已經嘗試了以下書面查詢:
Match(person:Person{Name:"Adam"})-[rel:hasHouseIn]->(city:City)
where city.isInAustralia="true"
optional match (person:Person{Name:"Adam"})-[rel:hasHouseIn]->
(cityOutside:City)
where city.isInAustralia="false"
return person.Name,City.Name as CityInAustralia ,cityOutside.Name as
CityOutsideAustralia
我想要的結果是這樣的:
名稱---------- CityInAustralia -------- - CityOutsideAustralia
Adam ------------ A -------------------------- --- B
亞當------------ d -------------------------Ç
亞當------------ E -------------------------空白
我想得到一個結果爲當我們在sql服務器上應用左外連接時,我們會得到什麼,其中Name將成爲我們將加入的列。
你沒有真正地說過什麼是錯的 - 你得到了什麼結果,爲什麼它是無效的? –
但是在SQL中做外連連工作的那種方式呢?這也不會在CityInAustralia和CityOutsideAustralia的所有價值之間產生笛卡爾積嗎?在等效的SQL語句中沒有任何內容會按照您描述的方式與列結果配對。 – InverseFalcon
在這裏,我有**亞當**的共同點,但讓我們說,而不是名稱,我們有SSN(Socail安全號碼) – darshitj2