Orientdb(2.1.8)相交功能不起作用

时间:2016-08-24 11:48:17

标签: mongodb pentaho orientdb

我正在使用OrientDB(2.1.8)数据库并使用OrientDB函数(unionall& intersection)执行以下查询。

有各种用户的用户单元,所以我想显示结果,如果两个用户的至少一个userUnits(@ rid =#16:2131,@ rid =#16:2130)相交,则应显示结果。

假设用户#16:2131 userUnits是[admin,manager] 用户#16:2131 userUnits仅为[admin]

所以'admin'userUnits很常见,所以应该显示结果 但是相交命令不起作用。

我的下面的查询在“unionall”函数中工作正常但不能使用“intersect”。

SELECT expand(unionall($a, $b))
LET $a = (SELECT userUnits FROM #16:2131),
$b = (SELECT userUnits FROM #16:2130)

输出来了 - > 管理员,经理 监

但是当我用交叉函数运行我的查询时,它既没有显示任何错误也没有显示结果。

SELECT expand(intersect($a, $b))
LET $a = (SELECT userUnits FROM #16:2131),
$b = (SELECT userUnits FROM #16:2130)

1 个答案:

答案 0 :(得分:1)

你可以试试这个:

SELECT intersect($a.userUnits, $b.userUnits)
LET $a = (SELECT userUnits FROM #16:2131),
$b = (SELECT userUnits FROM #16:2130)

我希望它有所帮助

再见