HQL语法疑问:SELECT A FROM A与FROM A是否等价?
HQL中
SELECT A FROM A与FROM A是否等价? 是的,这两条HQL语句在功能上完全等价,都会返回实体A的所有实例对象。
- 使用
FROM A是HQL的简写语法:当省略SELECT子句时,Hibernate默认会选择查询的根实体(也就是这里的A),最终返回A类型的实体对象列表。 SELECT A FROM A是显式指定选择根实体的写法,和简写形式的执行逻辑、返回结果没有任何区别。
需要注意的是,这种等价性只针对选择整个实体的场景。如果是选择实体的某个属性(比如SELECT A.id FROM A),那和FROM A的返回结果就完全不同了——前者返回的是属性值的集合,后者返回的是完整的实体对象集合。
内容的提问来源于stack exchange,提问作者Huaci
相关产品推荐
相关产品推荐

