2

テーブルをクエリし、いくつかのパラメーターを使用してフィルター処理するという非常に簡単なタスクがあります (このパラメーターは、他のテーブルの外部キーです)。

例として、Table1 には次のフィールドが含まれます。

id, name , description, company_id;

入力として company_id (会社オブジェクトではない) を受け取り、table1 からすべてのレコードを返すメソッドがあります。条件クエリは次のようになります。

DetachedCriteria criteria = DetachedCriteria.forClass(Table1.class)
       .add(Restrictions.eq("company.id", companyId));

問題は、これを行うためにいくつかのテーブルを結合するため、生成されたクエリが複雑すぎることです。そして、このクエリは「本番対応」ではありません

このような SQL クエリを持つ基準を構築する方法はありますか?:

SELECT * from table1 where company_id =?
4

1 に答える 1