我有一个图包含两种类型的节点:景点和酒店。
我想做的是对酒店的查询,这些酒店被三大景点所包围。我现在(下面)的查询给出了至少连接到一个吸引点的酒店。
FOR document IN Attraction
FOR vertex, edge, path IN 1..2 OUTBOUND document GRAPH "LondonAttractionDB"
FILTER path.vertices[0].entityTypes[0] == "Attraction" OR path.vertices[0].entityTypes[0] == "Attraction" OR path.vertices[0].entityTypes[0] == "Attraction"
FILTER path.vertices[1].entityTypes[0] == "Hotel"
FOR prop4 IN path.edges[0].properties
FILTER prop4.name == "name" AND prop4.value == "Food_and_beverage_location"
OR prop4.name == "name" AND prop4.value == "Food_and_beverage_location"
OR prop4.name == "name" AND prop4.value == "Accommodation_location"
RETURN DISTINCT path这将给出以下结果。(橙色酒店,绿色景点)

如何在圆圈内显示结果?(酒店与三个景点相连)
任何帮助都是非常感谢的。
发布于 2018-04-17 10:38:36
如果没有关于数据集(文档结构和集合)的详细信息,很难回答,但是根据您的示例查询和描述,我将使用另一种方法:
FOR hotel IN Attraction
FILTER doc.entityTypes[0] == "Hotel"
LET attractions = (
FOR vertex IN 1..1 INBOUND hotel GRAPH "LondonAttractionDB"
FILTER vertex.entityTypes[0] == "Attraction"
RETURN 1
)
FILTER LENGTH(attractions) == 3
RETURN hotelhttps://stackoverflow.com/questions/49875156
复制相似问题