【发布时间】:2012-10-17 07:47:31
【问题描述】:
@Entity
@Table(name="users")
public class User implements Serializable
{
private List<Request> sentRequest;
private List<Request> receivedRequest;
private Profile profile;
}
public List<Object> getUserProfiles(Integer userid)
{
query = em.createQuery(
"SELECT p from Profile p1,Profile p2 WHERE " +
"p1.user.sentRequest.sender.id (:id) NOT IN " +
" p2.user.receivedRequest.receiver.id and " +
"p1.user.id NOT IN (:id)"
).setParameter("id",userid);
我尝试了上面的查询,它抛出了非法的取消引用集合的尝试。
关系是
用户 - 配置文件 OneToOne 和用户 - 请求 OneToMany
我想选择所有没有发送请求的用户个人资料,除了自己的个人资料。
【问题讨论】: