请问如何在存储过程中调用数据库的hashjoin功能?
想实现的效果是(求和给定的a b c d e同时有关联的:report)
(a)-[:isA0…]>()-[:dataof]->(report:report); (b)-[:isA0…]->()-[:dataof]->(report); ©-[:isA0…]->()-[:dataof]->(report); (d)-[:isA0…]->()-[:dataof]->(report); (e)-[:isA0…]->()-[:dataof]->(report);
a,b,c,d,e是给定的点,这些点都可能有几万到几百万的关系,用cypher写的话会根据(report)自动hashjoin,但是cypher不定路径组合数量实在是太多太慢了,想改用存储过程。
另外如果想判断某个:report和a b c d e是否很密切该如何做呢?比如对于某个report和a b c d e的子树而言,希望abcde彼此距离和越短越好,该怎么做呢?有没有办法不遍历和a b c d e相连的所有report,就能求出距离和最小的top(K)呢
谢谢 ,苦思一个多月了