hasMany列上的gorm过滤器

时间:2017-02-15 10:57:43

标签: grails subquery gorm

我有2个domainClasses,如下所示:

class Customer {
   def name   
   static hasMany = [accounts:Account]
}

class Account {
   def accountNo
   def type
}

此处帐户的类型可以是“保存”,“当前”,“FD”

我想写一个标准来搜索所有帐户类型为“正在保存”,“当前”的客户。

标准应该是什么,我尝试使用以下内容:

def customers = Customer.createCriteria().list {
    accounts {
         and {
            eq('type','Saving')
            eq('type','Current')
        }
    }
}

但是当它执行时,创建内部连接,给出0结果。

1 个答案:

答案 0 :(得分:2)

您可以按照Y. Tarion的建议使用or代替and,也可以使用in

def types = ["Savings", "Current"]
def customers = Customer.createCriteria().list {
    accounts {
        "in" "type", types
    }
}