grails criteria builderを使用して、次のhibernateクエリを書き換えることはできますか?grails GORM検索条件のフィールドを連結
select p from Person as p
where lower(p.firstname) + ' ' + lower(p.lastname) like '%john doe%'
おかげで、 ヴァルデマー
grails criteria builderを使用して、次のhibernateクエリを書き換えることはできますか?grails GORM検索条件のフィールドを連結
select p from Person as p
where lower(p.firstname) + ' ' + lower(p.lastname) like '%john doe%'
おかげで、 ヴァルデマー
はこのようなものはOKでしょうか?
or {
ilike('firstname', '%fred%')
ilike('lastname', '%fred%')
}
いいえ、私は、たとえば、名と姓の両方を介して "ジョンダウ"を検索することができます。 – Valdemar
私が考えることができるのは、sqlRestriction節を使用することだけです。 –
また、 'または'の中で約4つの条件を考えることができます。 –
ドメインの観点からは、複数のフィールドを1つのフィールド(例: 'Person.fullName')にまとめることだけを考えましたか?名前がアプリケーション全体で単一の文字列として扱われる場合、それを分割するのはおそらく意味がありません。さらに、異なる文化や偏心を導入すると、ファーストネーム/ラストネームのデザイン全体がうんざりすることがあります。 「Bono」または「Sting」は名または姓ですか? :) –
はい、私はそれを考慮しましたが、残念ながら、この場合はオプションではありません。そして、質問はとにかく私が思うと面白いです:) – Valdemar