OrientDB如何检查2个节点之间的关系
我有一些“产品”类的顶点,它们可以被“用户”类“查看”或“排序”。。 我的问题是,我想编写SQL查询或匹配命令来获取特定用户“查看”的所有产品,但没有任何用户订购。。 如何检查MATCH命令中的“产品”和“用户”之间不存在“已订购”关系 例如:OrientDB如何检查2个节点之间的关系,orientdb,Orientdb,我有一些“产品”类的顶点,它们可以被“用户”类“查看”或“排序”。。 我的问题是,我想编写SQL查询或匹配命令来获取特定用户“查看”的所有产品,但没有任何用户订购。。 如何检查MATCH命令中的“产品”和“用户”之间不存在“已订购”关系 例如: ProductA我想你可以使用这个查询 select from Product where in("viewed").@rid contains userRid and in("ordered").size()=0 希望有帮助。我想你可以用这个查询 s
ProductA我想你可以使用这个查询
select from Product where in("viewed").@rid contains userRid and in("ordered").size()=0
希望有帮助。我想你可以用这个查询
select from Product where in("viewed").@rid contains userRid and in("ordered").size()=0
希望有帮助。试试这个:
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().size() == 1 and inE().@class = "viewed" and in().name contains "UserA")} RETURN pdt.name
这是输出:
更新
希望能有帮助
问候谢谢。但是,如果我在UserB和ProductC之间添加“viewed”关系,您的查询将是错误的。应该同时返回产品B和产品C。谢谢。但是,如果我在UserB和ProductC之间添加“viewed”关系,您的查询将是错误的。它应该返回ProductB和ProductC。