我有一个对象Dog,其中包含一组DogMetadata。
每个 DogMetadata 都有两个值:一个 String(“ desc ”)和一个 int(“ rank ”)。
对狗的描述有不同的排名,例如:“小”是 5,“毛茸茸”是 2,“友好”是 9,“dalmation”是 11,“mutt”是 22。
我需要根据它们的任何desc 值搜索狗(例如,查找“毛茸茸”或“小型”狗)。
此查询返回匹配的狗,但它们没有任何顺序。
select distinct Dog as d
left join d.dogMetadata as dMeta
where ( (dMeta.desc = 'furry') OR (dMeta.desc = 'small') )
如何按任何匹配 DogMetadatas 的总“排名”值对匹配的 Dog 对象列表进行排序?
我整天都在像狗一样工作(尝试“Group By”和“Order By”),但我想我一直在叫错树。