私はgrailsが初めてで、休止状態にはあまり慣れていません。私は、grails でexecuteQueryを使用した休止状態のクエリに関する問題に遭遇しました。このコードを、問題のある元のコードに似たものにしました。
def nonMemberList = Group.executeQuery("select gp.name from Group gp where gp.status = 'CONFIRMED_MEMBER'")
def FemaleMemberList = Group.executeQuery(""" select sum(case when g.isMale = false and g.name not in(:isNotConfirmedMember) from Group g where :startDate <= g.dateCreated and g.dateCreated < :endDate""",
[isNotConfirmedMember: nonMemberList, startDate: startDate, endDate: endDate])
nonMemberListが nullの場合は常にエラーが発生し、 is not構文を使用するときにリストを null にするべきではないことがわかりました。
私は休止状態のクエリにあまり詳しくありません。そのため、元のコードのように動作する他の休止状態のクエリを使用する必要があるという問題があります。あなたの知識を共有してくれてありがとう。