2011-04-08 27 views
6

Bu MYSQL sorgusu gibi bir şeyi nasıl oluşturabilirim?Grails createCriteria group by

def items = items_c.list{ 
     'in'('fieldId',field_ids) 
     projections{ 
      groupProperty("itemId") 
     } 
    } 

Ama hiç böyle alanını düzeni, max tanımlamak ve sıralamak gerekir:

SELECT * 
     FROM engine4_user_fields_values 
    WHERE field_id = 31 OR field_id = 24 
    GROUP BY item_id; 

Böyle bir şey kullanmak, düzgün çalışır

def items = items_c.list(max:5, sort:"itemId", order:"desc"){ 
     'in'('fieldId',field_ids) 
     projections{ 
      groupProperty("itemId") 
     } 
    } 

Ama bu beni farklı olur satır öğesi aynı 'item_id'

Ne yapabilirim?

+1

ile bir HQL sorgusu kullanmayı düşünmek mantıklı olabilir. Soruyu, motor4_user_fields_values ​​tablosuna ilişkin alan sınıfının (ları) alanlarını da dahil edebilecek misiniz? –

+0

GrupProperty ('fieldId') grubunu ilk groupProperty öğesinin altına eklerseniz ne olur? –

cevap

0

("İşte Sorgu")

lists= items.createCriteria().list(){ 
    projections { 
    order ("ItemId") 
    } 

    } 

veya executeQuery, projeksiyon ilk sonucu agains kullanın;

İlgili konular