# 单步查询
go 1 steps from "c3e4801febf063d976369521418e7d12" over transfer bidirect where (case transfer._type>0 when true then transfer.send_amt>=$^.top100.`out` else transfer.recv_amt>=$^.top100.`in` end) yield id($^) as src, id($$) as dst;
# 多步查询
go 1 to 2 steps from "c3e4801febf063d976369521418e7d12" over transfer bidirect where (case transfer._type>0 when true then transfer.send_amt>=$^.top100.`out` else transfer.recv_amt>=$^.top100.`in` end) yield id($^) as src, id($$) as dst;
@jmq2020 感谢回复,我另外还有一个关于计算下推的问题,在go语句中引用边的方向做计算是可以下推的(例如我上面截图中使用的 case(transfer._type>0) when true then ... else ... end ),但是同样的写法在match语句中无法下推,请问有什么办法可以在match语句中实现判断方向并下推到存储层吗
match完整语句如下:
match (v1)-[e]-(v2)
where
id(v1)=="c3e4801febf063d976369521418e7d12" and
(case typeid(e)>0 when true then e.send_amt>=... else e.recv_amt>=... end)
return v1, e, v2;