我正在尝试使用PhpOrient选择一个边缘“Contained”指向OrientDB 2.1中的“Rgb”顶点。边具有属性“概率”,而Rgb具有属性“hex”。
所以:
Artist -> created -> Artwork -> contained -> Rgb.
此查询使用属性“probability”查找边缘“Contained”。
SELECT *, EXPAND (OUT("Created").OUTE("Contained")) FROM Artist WHERE path="Achebach, Andreas"
此查询查找具有属性“hex”的顶点Rgb。
SELECT *, EXPAND (OUT("Created").OUT("Contained")) FROM Artist WHERE path="Achebach, Andreas"
但我想拥有这两个属性。如何组合查询以获得一个查询,可以找到这两个属性?
答案 0 :(得分:4)
在v 2.1中,您可以使用子查询执行此操作:
SELECT probability, inV().hex FROM (
SELECT expand(out("Created").outE("Contained"))
FROM Artist WHERE path="Achebach, Andreas"
)
在OrientDB v 2.2中,您也可以使用模式匹配
MATCH
{class:Artist, as:a, where:(path="Achebach, Andreas")}
.out("created"){as:aw}
.outE("contained"){as:cont}
.inV(){as:rgb}
RETURN cont.probability, rgb.hex