У меня есть класс со статусом:
class A{ String status }
Этот статус может иметь значения «начало», «конец», «в процессе».
Я бы хотел получить число 'start', 'end' и 'inprogress' в одном запросе.
Я вижу этот пост: Различные значения количества записей в одном запросе , но это только для Oracle.
Возможно ли это сделать в Grails / GORM?
Спасибо.
Вы можете использовать executeQuery:
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]}'" }
Если вам нравятся критерии, взгляните на это: stackoverflow-> Использование groupProperty и countDistinct в критериях Grails