Как реализовать "выбрать сумму ()" в Grails - PullRequest
2 голосов
/ 26 апреля 2010

У меня такие отношения:

class E {
  string name
  hasMany = [me:ME]
}

class M {
  float price
}

class ME {
 E e
 M m
 int quantity
}

И я не хотел бы итерировать, чтобы добиться этого: «получить сумму количества в ME, умноженного на цену соответствующего M для данного E».

Любые советы о том, как реализовать это с помощью GORM / HQL?

Заранее спасибо

1 Ответ

8 голосов
/ 26 апреля 2010

Не проверял это, но он должен быть закрыт, если он не работает из коробки:

def givenE = // the E we're looking for
def sum = ME.executeQuery("select sum(m.price) from ME as me join me.m as m where me.e = :e", [e: givenE])
println sum
...