使用しているフレームワークや、データベースが使用している特定の RDBMS は (私には) 明確ではありませんが、SQL 条件の全体的な推力は通常非常に単純です。
ほとんどの他のコンピューター言語と同様に、and/or/not ステートメントを使用します。もちろん、SQL では、(通常は) 記号の代わりに単語を使用します。
AND
それ以外の&&
OR
それ以外の||
NOT
それ以外の!
標準の比較演算子とともに:
「等しい」は単一の=
記号にすぎず、「等しくない」は通常反対側の山括弧であることに注意してください<>
。
したがって、現在のステートメントを考えると、ユーザーの言語でそれらのアプリケーションのみを取得し、「無効」になっているアプリを除外したい場合は、次のようにすることができます。
def apps = Application.findAll("from Application as app
where lower(app.name) like '%${params.query.toLowerCase()}%'
and app.language = userLanguageParameter
and app.status <> inactiveAppStatus ");