Запрос OrientDB для получения общей суммы из свойства edge

Я новичок в OrientDB, и мне нужна помощь в написании запроса.

В моей БД есть следующие классы:

  1. Заказ {orderId: String, ...}
  2. MenuItem {имя блюда: строка, ...}
  3. Там есть край has_menu_item из Order -> has_menu_item -> MenuItem.
  4. Край 'has_menu_item' имеет свойство 'orderQty'

Мне нужна помощь, чтобы написать запрос, в котором нужно агрегировать orderQty для каждого дня на основе некоторого условия даты из Order.orderDate

Ожидаемый результат:

+--------------+-----------------+--------------------------+
|# |Date       |dishName         |Sum(orderQty)             |
+--------------+-----------------+--------------------------+
|0 |12-05-2020 |Pizza            |9                         |
|1 |12-05-2020 |Burger           |5                         |
|2 |13-05-2020 |Burrito          |20                        |
+--------------+-----------------+--------------------------+

Мой запрос:

select orderDate, out('has_menu_item').dishName, out_has_menu_item.orderQty 
    from (SELECT EXPAND(IN('has_menu_item')) FROM MenuItem) 

Фактический выход

+--------------+-----------------+--------------------------+
|# |Date       |dishName         |Sum(orderQty)             |
+--------------+-----------------+--------------------------+
|0 |12-05-2020 |[Pizza, Burger]  |[5,5]                     |
|1 |12-05-2020 |[Pizza, Burrito] |[4,12]                    |
|2 |13-05-2020 |[Burrito]        |[8]                       |
+--------------+-----------------+--------------------------+

Почему-то я не могу получить желаемый результат. Какой лучший способ получить желаемый результат? Заранее спасибо.

0 ответов

Другие вопросы по тегам