admin 管理员组文章数量: 1184232
2023年12月19日发(作者:如何运行php格式网页)
查询数据个数:
(Integer)Query("select count(*) from User").iterate().next();
使用HQL删除数据:
String hql = "delete user where age>18";
Query query = Query(hql);
int ref = eUpdate();
();
//更新数据
Transaction tx= ransaction();
Query query = Query("update User set name='momor' where name='bbb'");
eUpdate();
();
();
也可以在where子句上进行表达式,例如:
Query query = Query("from User user where ( / 10 = 3)");
也可以在where子句上使用and、or,例如:
Query query = Query("from User user where ( > 20) and ( =
'caterpillar')");
is not nullL与is null则可以测试字段值是否为空值,例如:
Query query = Query("from User user where is not null");
between可以测试字段值是否在指定的范围之内,例如:
Query query = Query("from User user where between 20 and 30");
可以使用in或not in来测试字段值是否在您指定的集合中,例如:
Query query = Query("from User user where in('caterpillar', 'momor')");
like或not like可以让您进行模糊条件搜寻,例如想搜寻名称中含有cater开头的数据:
Query query = Query("from User user where like 'cater%'");
可以对查询结果使用order by进行排序:
Query query = Query("from User user order by ");
可使用desc反排序:
Query query = Query("from User user order by desc");
可同时指定两个以上的排序方式,例如先按照"age"反序排列,如果"age"相同,则按照"name"顺序排列:
Query query = Query("from User user order by desc, ");
可以配合GROUP BY子句,自动将指定的字段依相同的内容群组,例如依字段"sex"分组并作平均:
Query query = Query("select , avg() from User user group by
");
还可以结合having子句,例如只将平均大于20的数据分组显示出来:
Query query = Query("select , avg() from User user group by
having avg() > 20");
使用SQL查询:
List
使用条件查询:
Criteria c = Criteria();//News是类,所以N大写
(("date", "date5"));
(n("date", "date1", "date8"));
er(("date"));//排序
版权声明:本文标题:Hibernate中Query的使用详解 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1702935978a436591.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。