from Hql语句最简形式
from指定了Hql语句查询主体-持久化类及其属性
HQL ------------> SQL
HQL 语法
from 类名
from子句中别名的应用
为被查询的类设定别名 目的是为了HQL语句其他部分通过别名引用该类
别名命名习惯 from Seller as seller
from Seller s,Customer c 两种别名的定义方法
select子句
以object[]形式放回选择的属性
以list or map返回查询结果
以自定义类型返回
以distinct返回独特的查询结果
select s.name , s.tel , s.address , s.star from Seller s ;
别名对后期的代码的调试有很大的帮助 写别名是一个好的习惯
以Map形式返回查询结果
select new map(s.name,s.tel,s.address) from Seller s;
Query query = session.createQuery(hql);
List<Map> maps = query.list();
for(Map map :maps){
map.get("0");
map.get("1");
map.get("2");
}
使用别名
select new map(s.name as name,s.tel as tel,s.address as address) from Seller s;
Query query = session.createQuery(hql);
List<Map> maps = query.list();
for(Map map :maps){
map.get("name");
map.get("tel");
map.get("address");
}
使用自定义类查询返回结果
select new Seller(s.name,s.tel,s.address) from Seller s
Query query = session.createQuery(hql);
List<Seller> sellers = query.list();
....
需要定义相应的带参构造器 无参构造器也需要一定要定义好 不能漏掉
distinct关键字去除查询结果中的重复元素
select distinct sex from Customer c