[英]Querying a list of items from a one-to-many relationship in Grails
如果我有一個名為Artist的課程,其中有很多Song:
class Artist {
String name
static hasMany = [songs : Song]
}
class Song {
String title
Integer duration
}
我想知道哪些歌手演唱了唱片清單。 例如,我想認識唱過Hello
, My Love
和Yesterday
(字符串數組)的藝術家。 做這個的最好方式是什么?
我嘗試使用條件和findAll,但無法真正弄清楚哪種方法是最好的。 有任何想法嗎?
此HQL將起作用:
def artists = Artist.executeQuery(
'select distinct a from Artist a join a.songs song where song.title in (:titles)',
[titles: ['Hello', 'My Love', 'Yesterday']])
它會返回藝術家列表,但是如果只有一個結果,您可以將其作為artists[0]
獲得artists[0]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.