【问题标题】:OrientDB - Result from 2 different tablesOrientDB - 来自 2 个不同表的结果
【发布时间】:2015-06-08 13:55:23
【问题描述】:

我有一个数据库,它有 2 个 V 类('User' 有 2 个名为 Name 和 Surname 的字符串,'Cinema')和 2 个 E 类('isGoing' 有一个名为 Day 的整数属性,'Friend')。 此选择返回初始顶点的“朋友”在特定日期正在播放的所有“电影”。

SELECT expand(both('Friend').outE('isGoing')[Day = 29].inV()) FROM #12:0

但现在我需要获取所有作为初始顶点“朋友”的“用户”姓名和姓氏,“isGoing”属性 Day,并让“isGoing”边缘从“用户”变为特定的“ Cinema'(假设它是#14:0)。 预期的结果将是一个列表:String 'Name'、String 'Surname' 和 int 'Day'。比如:

SELECT Name, Surname, Day FROM (SELECT expand(both('Friend').outE('isGoing').inV()) FROM #12:0) WHERE @rid = #14:0

这在 OrientDB 中可行吗?

【问题讨论】:

    标签: sql database select orientdb


    【解决方案1】:

    试试这个

    SELECT in.*,out.*,Day 
    FROM (SELECT expand(both('Friend').outE('isGoing')[Day = 29]) 
          FROM #12:0)
    

    【讨论】:

    • 完美运行!我只是做了一些更改,所以它仍然像SELECT in.*,out.*,Day FROM (SELECT expand(both('Friend').outE('isGoing)) FROM #12:0) WHERE in.Id = 10
    • 我正在尝试学习OrientDB,所以我建立了一个测试数据库来尝试这个,因为我不懂语法。不幸的是,解析器也不明白。我猜语法已经从早期版本的软件中改变了。 (我使用的是 2.2.8。)我收到一条通用消息:com.orientechnologies.orient.core.exception.OCommandExecutionException: Invalid script:Encountered " <FROM> "FROM "" at line. Was expecting one of: <EOF>, <SELECT> ...
    猜你喜欢
    • 1970-01-01
    • 2017-11-16
    • 2022-11-14
    • 1970-01-01
    • 1970-01-01
    • 2017-09-28
    • 2016-08-13
    • 2021-06-25
    • 1970-01-01
    相关资源
    最近更新 更多