Как рассчитывать на разные значения в одном запросе с Grails? - PullRequest
1 голос
/ 20 февраля 2011

У меня есть класс со статусом:

class A{
  String status
}

Этот статус может иметь значения «начало», «конец», «в процессе».

Я бы хотел получить число 'start', 'end' и 'inprogress' в одном запросе.

Я вижу этот пост: Различные значения количества записей в одном запросе , но это только для Oracle.

Возможно ли это сделать в Grails / GORM?

Спасибо.

Ответы [ 2 ]

4 голосов
/ 20 февраля 2011

Вы можете использовать executeQuery:

def counts = A.executeQuery(
    'select status, count(status) from A group by status')

Это вернет список объектов [], например,

for (row in counts) {
    println "there are ${row[1]} with status '${row[0]}'"
}
2 голосов
/ 21 февраля 2011

Если вам нравятся критерии, взгляните на это: stackoverflow-> Использование groupProperty и countDistinct в критериях Grails

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...