gpt4 book ai didi

java - Grails查询关联问题

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:20:28 26 4
gpt4 key购买 nike

我在为以下域类编写查询时遇到问题:

class Person {
static hasMany = [memberships: Membership]
}

class Membership {

static belongsTo = [person: Person, group: Group]

Date joinDate = new Date();
Group group;
Person person;
}

class Group {
static hasMany = [memberships: Membership]
}

基本上,我想找到属于组列表的所有人(假设组 ID 是 (1,2)。这里的技巧是该人必须是两者的成员组。我更喜欢条件查询,但 HQL 也可以。

请注意,使用类似 group.id in (1,2) 的查询将不起作用,因为它可以是任何组,而不是两者

最佳答案

这是我的简单 HQL 方法:

Person.executeQuery("FROM Person x WHERE x IN (SELECT m.person from Membership m WHERE m.group = :group1) AND x IN (SELECT m.person from Membership m WHERE m.group = :group2)", [ group1: Group.get(1), group2: Group.get(2) ])

干杯

关于java - Grails查询关联问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/824306/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com