次のようなテーブルがあります。
id name shade date_created
---- ----- ------- ---------------
1 Red bright 10-28-2012
2 Orange light 10-28-2012
3 Red <null> 10-24-2013
4 Orange light 10-24-2013
望ましい結果:
id name value date_created
---- ----- ------ ---------
3 Red <null> 10-24-2013
4 Orange light 10-24-2013
この結果を得るには、GORM で何ができますか?
純粋なSQLでは、これは私が望む結果を得るクエリです:
SELECT t.name, t.shade, r.MaxTime
FROM (SELECT name, MAX(date_created) as MaxTime
FROM colorable
GROUP BY name) r
INNER JOIN colortable t ON t.name = r.name AND t.date_created = r.MaxTime
私が試したこと:
def c = Color.createCriteria()
def results = c {
projections {
groupProperty("name")
max("dateCreated")
}
}
しかし、射影からより多くの列を取得する方法がわかりませんか? つまり、shade
列