私は次のクラスを持っています:
@Entity
@Table(name = "clients")
public class Client extends Model {
@Id
public int id;
@Formula(select = "inv.some_data",
join = "left join (select 1 as some_data) as inv")
public int someData;
public static Finder<String, Client> find =
new Finder<String, Client>(String.class, Client.class);
public static int countClientsWithData() {
return Client.find.where().gt("someData", 0).findRowCount();
}
}
フィールドがありsomeData
ます (play フレームワークはゲッターとセッターを自動的に生成します)。またcountClientsWithData
、このフィールドをwhere
句で使用します。今私がするなら
int count = Client.countClientsWithData();
NullPointerException
クエリを実行しようとするとスローされます
select count(*) from clients t0 where inv.some_data > ?
注釈findRowCount
の結合を認識していないようです。@Formula
この問題を回避する方法について何か考えはありますか?
更新された質問:findRowCount
呼び出す問題を絞り込みました。