criteria 查询排序问题。java Hibernate 懂的来
--------------------编程问答-------------------- 不是有这个方法crit.addOrder(Order.desc("id")); 吗 --------------------编程问答-------------------- 是的但是 ,如何crit.addOrder(Order.desc(tourComment.count());
并且限定条件为 t.id= tourComment.id 呢?大神帮忙。 --------------------编程问答-------------------- 就是不懂如何加的这个条件限定。和查询出来的tourComment.count()的数的方法。 --------------------编程问答-------------------- 就是这个如何用类来实现呢?
select count(*)"
+ " from "
+ "TOUR_COMMENT tourComment where tourComment.tour_id = t.id
大神在哪里? --------------------编程问答-------------------- 人家还有crit.add(Restrictions.eq("xx", 00)); 组合一下嘛 --------------------编程问答-------------------- 嗯 但是这个count数应该如何得到呢?
select count(*) --------------------编程问答-------------------- Hibernate里有Projections。Projections.rowCount() --------------------编程问答-------------------- 楼上的,能说完整一些不,给个完全的代码 --------------------编程问答-------------------- 嗯 是啊,有点不太会用
就是这个如何用类来实现呢?
select count(*)"
+ " from "
+ "TOUR_COMMENT tourComment where tourComment.tour_id = t.id
完全的该怎么写呢?谢谢 --------------------编程问答-------------------- 求救。纠结一天了 --------------------编程问答-------------------- 因为是2个表所以该如何关联呢? --------------------编程问答-------------------- 把表结构说出来 --------------------编程问答-------------------- 表结构就是:
String criteria += " order by (select count(*)"
+ " from "
+ "TOUR_COMMENT tourComment where tourComment.tour_id = t.id) asc"
其中t.id是tourComment.tour_id的外键。
是一对多关系 --------------------编程问答-------------------- List results = session.createCriteria(Txxxx.class)
.setProjection( Projections.rowCount() )
.add( Restrictions.eq("tour_id", t.id) )
.list();
仅供参考
List results = session.createCriteria(Txxxx.class)
.setProjection( Projections.rowCount() )
.add( Restrictions.eq("tour_id", t.id) )
.list(); --------------------编程问答-------------------- 仅供参考
List results = session.createCriteria(Txxxx.class)
.setProjection( Projections.rowCount() )
.add( Restrictions.eq("tour_id", t.id) )
.list();
这个t.id
也要这样去 session.createCriteria(Txxxx.class)创建一个吗?
我不明白的就是他如何在add( Restrictions.eq("tour_id", t.id) 这里关联的,
即:ti.id 怎么定义。和在add( Restrictions.eq("tour_id", t.id)这里怎么写。 --------------------编程问答-------------------- 补充:
因为应该是2个类的
session.createCriteria(Txxxx.class)
这个应该是创建了一个,怎么去创建2个并用外键关联。
即完成这句话中的add( Restrictions.eq("tour_id", t.id)
t.id --------------------编程问答--------------------
假设有两个表 Club Team
select club.clubid, club.name, team.clubid, team.teamid, team.teamname
from Club club, Team team
where club.clubid=team.clubid and
club.name='Arsenal'
and team.teamname='Team A';
等价于
Criteria criteria = session.createCriteria(Club.class,"club")
.createAlias("club.team","team")
.add(Restrictions.eq("club.name", "Arsenal"))
.add(Restrictions.eq("team.teamname", "Team A"));
List list = criteria.list();
补充:Java , Web 开发