请注意,使用条件或使用某些API将此hql查询转换为GORM。我是grails的新手,我搜索得足够多,但如果这很简单,我就没有得到任何积极的解决方案。请原谅我。
MappingDetail.executeQuery(“从MappingMaster中选择map.id作为map,其中map.id =(从MappingDetail中选择mapdetail.id作为mapdetail,其中mapdetail.rawdata_template.id =(从RawDataMasterTemplate中选择rawdata.id作为rawdata,其中rawdata.name喜欢:name))“,[name:'%Rick%'])
答案 0 :(得分:1)
为什么你必须在这里使用标准?我认为这是您使用HQL的选择。
def raw = RawDataMasterTemplate.findByNameLike('%Rick%')
def detail = MappingDetail.findByRawdata_template(raw)
def master = MappingMaster.get(detail?.id)
答案 1 :(得分:1)
测试一下:
MappingMaster.withCriteria {
createAlias 'mappingDetail', 'mp'
createAlias 'mp.rawDtaMasterTemplate', 'rd'
projections {
property 'id'
}
ilike 'rd.name', '%Rick%'
}