Sql JPA查询与联接表上的where子句联接
我想编写一个检索以下内容的查询:Sql JPA查询与联接表上的where子句联接,sql,hibernate,jpa,jpql,Sql,Hibernate,Jpa,Jpql,我想编写一个检索以下内容的查询: 不包含联系人的客户端 包含联系人但仅包含状态为“AC”的联系人实体的客户端 从客户端选择客户端 左连接获取client.contacts联系人,其中(client.contacts为空或(client.contacts不为空且contact.status='AC')) 此查询仅返回没有联系人的我的客户端或只有活动联系人的客户端。 有人能帮我吗 我正在使用JPA1。我无法切换到JPA2。 它还需要是一个JPA1查询 当我的数据库中有以下数据时: 客户端1-
- 不包含联系人的客户端
- 包含联系人但仅包含状态为“AC”的联系人实体的客户端 从客户端选择客户端 左连接获取client.contacts联系人,其中(client.contacts为空或(client.contacts不为空且contact.status='AC'))
- 客户端1-->联系人:联系人1状态为AC,联系人2状态为AR
- 客户端2-->联系人:状态为AR的联系人3,状态为AR的联系人4
- 客户端3-->联系人:状态为AC的联系人5,状态为AC的联系人6
- 只有联系人1的客户端1
- 客户2没有任何联系人
- 客户3与联系人5和6
- “WHERE client.status=‘AC’AND”表示您只能获得状态为AC的客户端。
您的意思是“其中contact=null或contact.status='AC'”吗?我的联系人可以是空的,也可以包含状态为已存档的联系人,但我只想检索未存档的联系人。