2011-05-02 53 views
0

我要問是否有可能從一個域的日期屬性得到數量與 Grails的或休眠標準周(日)功能

e.g在MySQL的是提前

+0

請看[this](http://stackoverflow.com/questions/29130921/grails-gorm-select-as)的問題。 – 2015-04-10 10:00:48

回答

0

WEEK(CURRENT_TIMESTAMP)

感謝你要獲取日期屬性,轉換屬性,提取一年的一週。例如

// fetch property from db 
def test= Test.get(1) 
// convert date and get week of year 
println test.date.toCalendar().get(Calendar.WEEK_OF_YEAR) 
0

這是可能的,你可以使用Hibernate的week()功能來做到這一點只要你的數據庫支持,。

例如,以下基團中的實體(其被假定由周向具有與名稱dateEntered日期字段,併產生一個List<Object[]>其中對於列表中的每個Object[],所述第一元件是所述計數,並且所述第二元件是週數。

criteria.setProjection(Projections.projectionList() 
        .add(Projections.rowCount(), "parameterType") 
        .add(Projections.sqlGroupProjection(
        "week({alias}.dateEntered) as week", 
        "week({alias}.dateEntered)", 
        new String[] {"week"}, 
        new Type[] {Hibernate.INTEGER))) 
        .addOrder(Order.desc("parameterType"));