我有一些类的顶点' Product
'可以是' viewed
'或' ordered
'按课程' User
' ..
我的问题是我想编写SQL查询或MATCH命令来获取所有' viewed
'由特定用户,但它没有被任何用户订购..
如何检查关系' ordered
'在Product
' User
'之间不存在和' User A
'在MATCH命令?
例如:
ProductA< -viewed- UserA
ProductB< -viewed- UserA
ProductC < -viewed- UserA
ProductD< -viewed- UserA
ProductA< -ordered- UserA
ProductD< -viewed- UserB
ProductD< -ordered- 用户B
输入:ProductB, ProductC
输出:{{1}}
谢谢,
答案 0 :(得分:3)
试试这个:
MATCH {CLASS:Product, AS:pdt, WHERE: (in().size() == 1 and inE().@class = "viewed" and in().name contains "UserA")} RETURN pdt.name
这是输出:
<强>更新强>
MATCH {CLASS:Product, AS:pdt, WHERE: (in("viewed").name contains 'UserA' and in("ordered").size()=0)} RETURN pdt.name
希望它有所帮助。
此致
答案 1 :(得分:1)
我认为你可以使用这个查询
select from Product where in("viewed").@rid contains userRid and in("ordered").size()=0
希望它有所帮助。