Как получить количество всех элементов в запросе GORM по критериям - PullRequest
2 голосов
/ 29 октября 2011

Итак, у меня есть этот критерий запроса, который получает 10 тематических статей, которые имеют объекты itemchannel типа 4 и в канале с идентификатором 1, т.е. я получаю 10 лучших статей, которые имеют тип функции и в канале x.

def criteria = Feature.createCriteria()
list = criteria.list {
    maxResults(params.max)
    itemChannels {
        eq ('itemType.id',(long)4)
        eq ('channel.id',(long)1)
    }
}

Как мне получить общий счет эффективно, т.е. у меня есть статьи для страницы 1, но мне нужно общее количество для нумерации страниц?

Спасибо

1 Ответ

0 голосов
/ 29 октября 2011

Думаю, я отсортировал это.

criteria = Feature.createCriteria()
count = criteria.get{
    projections {
        countDistinct('id')
    }
    itemChannels {
        eq ('itemType.id',(long)4)
        eq ('channel.id',(long)2)
    }
}
...