Play フレームワークのエンティティ クエリでデータベース インデックス ヒントを指定することは可能ですか。
私のコードは次のようになります:
public static List<Transaction> findOnInactive(Date date) {
return Transaction.find(
"date = ? and account in ( select d.acctNb from account d "
+ " where d.date = ? and (d.inactive = true or d.blocked = true)"
+ " group by d.acctNb )", date, date).fetch();
}
生成されたクエリの実行には 20 秒かかります。ただし、同じクエリを手動で実行する
select * from transaction with (INDEX(_dta_index_k1_1)) ...
1秒しかかかりません。とにかく、JPA クエリでインデックス ヒントを指定できますか?