【发布时间】:2013-10-02 03:08:00
【问题描述】:
我是 Hibernate 框架的新手,基本上我有在 mysql 中使用连接的经验。但不知道其他数据库支持的所有join在hql中是否都支持。
谁能告诉我下面的连接中哪些所有连接都在休眠状态。
- 内连接
- 左连接
- 右连接
- 外连接
- 完全加入
- 完全外连接
- 左外连接
- 右外连接
- 交叉连接
- 不包括内连接的左连接
- 不包括内连接的右连接
- 外部联接不包括内部联接
【问题讨论】:
我是 Hibernate 框架的新手,基本上我有在 mysql 中使用连接的经验。但不知道其他数据库支持的所有join在hql中是否都支持。
谁能告诉我下面的连接中哪些所有连接都在休眠状态。
【问题讨论】:
最好的起点是文档。在16.3. Associations and joins 部分,我们可以看到,对于查询,基于 HQL 我们有:
支持的连接类型是从 ANSI SQL 借来的:
- 内连接
- 左外连接
- 右外连接
- 完全连接(通常没用)
那就太好了。因为我们正在研究抽象模型,所以不支持由 DB 提供程序定义的所有“特定”JOIN 类型
您还可以检查 Criterion here,查看预定义的连接“const”:FULL_JOIN、INNER_JOIN、LEFT_JOIN,用于 Criteria API *(例如 Criteria.LEFT_JOIN)*
【讨论】: