【问题标题】:GORM: Find by collection contentsGORM:按收藏内容查找
【发布时间】:2013-07-11 19:50:22
【问题描述】:

我有以下两个类:

class Person{

 String name

  static hasMany = [
     items: Item
 ]
}

class Item{
 String name
}

多人也可以拥有相同的物品。我正在尝试获取在其集合中具有特定项目的所有人员的列表。 IE。人员 A 和 B 的列表中都有项目 A,因此将它们都归还。不幸的是,它们不是 findAllByCollectionContains(),最接近的是 findAllByCollection(),它需要一个精确的集合。

我一直在尝试用 executeQuery 给我更多的控制权,但还没有想出任何东西。

我尝试过的示例:

 Person.executeQuery("select name from Person p where ? in p.items",[item])

有什么建议吗?

【问题讨论】:

    标签: grails hql grails-orm


    【解决方案1】:

    你必须加入物品集合,然后你可以很容易地查询它

     Person.executeQuery("select name from Person p join p.items as i where i = ?",[item])
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-03-30
    • 1970-01-01
    • 1970-01-01
    • 2020-05-13
    • 2023-03-12
    • 1970-01-01
    • 2017-01-26
    相关资源
    最近更新 更多