表中是个1对多的关系,文章Article表是1,浏览量表Watch是多, Article里有个Set。
现在我要按浏览量的高低,也就是Set的大小对Article进行查询。该怎么办。order by 什么?
已经解决了,原来hibernate里自带的有函数,hql = "from Article where deleteFlag = 0 order by size(watches)"; 这样就行了。Article是1,watches是在Article类里定义的Set集合的属性名。Watch表是浏览量表。
文章Article表是1,浏览量表Watch是多,Watch表是干嘛滴?
把set查出来,order by set啊
order by
(
select count(*) from watxh
group by 关联ID
)
试试看吧
后面加上:
order by
(
select count(*) from watxh w where w.article_id = a.id
)