проблема с преобразованием SQL в HQL - PullRequest
0 голосов
/ 09 января 2012

Я пытаюсь изменить приведенный ниже SQL-запрос на HQL в моем приложении grails-groovy

    top10UserActivityQuery =
"select sum(trans_cnt) as t_cnt, employeeid as username from map2_data "+
"where fdate between (:datefrom) and (:dateto) and res_id=:res_id and location =:location "+
"group by employeeid order by t_cnt desc limit 10;"
der rows = myds.rows(top10UserActivityQuery )

Как использовать критерии создания в GORM для этого ... или любым другим способом?

1 Ответ

2 голосов
/ 09 января 2012

критерии будут аналогичны следующим:

def criteria = DomainClass.createCriteria()
def topTen = criteria.list {
    and {
        between("fdate", dateFrom, dateTo)
        eq("res", resId)
        eq("location", location)
    }
    projections {
        sum("trans_cnt")
        groupProperty("employee")
        property("employee")
    }
}

однако я бы предложил использовать прямой hql, который генерирует этот критерий.

...