OrientDb 检查边是否存在于一个方向
OrientDb check if edge exists in one direction
我正在使用 orientdb 并且正在展开所有跟随我的顶点。现在我也在跟踪一些顶点,所以我想检查我是否在跟踪某个特定的顶点。
我正在使用的查询:
SELECT @rid, name FROM (SELECT expand(in('Follow')) FROM users WHERE @rid = #123:8 LIMIT 20)
我也试过
SELECT @rid as userRid, name, if(SELECT FROM follow where out = #123:8 And in = userRid, 1, 0) as followed FROM (SELECT expand(in('follow')) FROM users WHERE @rid = #123:8 LIMIT 20)
知道如何实现预期的结果吗?
试试这个:
select from <your rid> where out('Follow').@rid contains <person rid>
希望对您有所帮助
此致
好的,有了Michela Bonizzi的回答,我就这样解决了
SELECT @rid, name, if(eval("in('Follow') contains #123:8"), 1, 0) as followed FROM (SELECT expand(in('Follow')) FROM users WHERE @rid = #123:8 LIMIT 20)
现在这个人会告诉我我是否也关注我的粉丝。所以Michela的回答是正确的。
让(源)-->(目标)
可以验证在两个方向上是否存在边
SELECT IN('EDGE_CLASS').sourceProperty FROM (SELECT FROM Target WHERE targetProperty = 'value')
SELECT OUT('EDGE_CLASS').targetProperty FROM (SELECT FROM Source WHERE sourceProperty = 'value')
或者,您可以使用别名和 EXPAND 函数来获取感兴趣的 属性。
SELECT EXPAND(IN('EDGE_CLASS').sourceProperty) AS sourceProperty FROM (SELECT FROM Target WHERE targetProperty = 'value')
我正在使用 orientdb 并且正在展开所有跟随我的顶点。现在我也在跟踪一些顶点,所以我想检查我是否在跟踪某个特定的顶点。
我正在使用的查询:
SELECT @rid, name FROM (SELECT expand(in('Follow')) FROM users WHERE @rid = #123:8 LIMIT 20)
我也试过
SELECT @rid as userRid, name, if(SELECT FROM follow where out = #123:8 And in = userRid, 1, 0) as followed FROM (SELECT expand(in('follow')) FROM users WHERE @rid = #123:8 LIMIT 20)
知道如何实现预期的结果吗?
试试这个:
select from <your rid> where out('Follow').@rid contains <person rid>
希望对您有所帮助
此致
好的,有了Michela Bonizzi的回答,我就这样解决了
SELECT @rid, name, if(eval("in('Follow') contains #123:8"), 1, 0) as followed FROM (SELECT expand(in('Follow')) FROM users WHERE @rid = #123:8 LIMIT 20)
现在这个人会告诉我我是否也关注我的粉丝。所以Michela的回答是正确的。
让(源)-->(目标)
可以验证在两个方向上是否存在边
SELECT IN('EDGE_CLASS').sourceProperty FROM (SELECT FROM Target WHERE targetProperty = 'value')
SELECT OUT('EDGE_CLASS').targetProperty FROM (SELECT FROM Source WHERE sourceProperty = 'value')
或者,您可以使用别名和 EXPAND 函数来获取感兴趣的 属性。
SELECT EXPAND(IN('EDGE_CLASS').sourceProperty) AS sourceProperty FROM (SELECT FROM Target WHERE targetProperty = 'value')