如何通过两个输入参数限制 OrientDB 中的查询

how to limit query in OrientDB by two input params

我在数据库中有以下结构:

class(V): @city (Name, X, Y)
class(V): @route(Name)
class(V): @Alternative_Route(Name) extends from @route

class(E): @has_route_to 
class(E): @has_subroute

边是这样连接到顶点的:

city -> has_route_to -> route -> has_route_to -> city
route -> has_subroute -> city 

作为输入,我有两个点:City1 和 City2。
例如,我需要查看我们在 City1 和 City2 之间有哪些子路线。
我正在编写以下查询:

traverse outE('has_route_to'), has_route_to.in 
from 
(select * from City where Name = 'City1')

但是如果我执行它我会看到从 City1 到 City2 的所有路线。

可以对 OrientDB 说:只显示 City1 和 City2 之间的所有点吗?

试试这个:

select from route where (Name in (select both('has_route_to').Name from City where Name = "City1")) and (Name in (select both('has_route_to').Name from City where Name = "City2"))

希望对您有所帮助

此致