Java Play Framework-如何使用';在';?
如何在Play Framework的模型查询中获得相同的结果Java Play Framework-如何使用';在';?,java,playframework,Java,Playframework,如何在Play Framework的模型查询中获得相同的结果 SELECT * FROM MyModel WHERE status IN (1, 5, 8) ORDER BY createdAt; 如果(1,5,8)是一个常数,那么它非常简单: List<MyModel> r = MyModel.find("status in (1, 5, 8) order by createdAt").fetch(); List r=MyModel.find(“createdAt以(1,5,8
SELECT * FROM MyModel WHERE status IN (1, 5, 8) ORDER BY createdAt;
如果(1,5,8)
是一个常数,那么它非常简单:
List<MyModel> r = MyModel.find("status in (1, 5, 8) order by createdAt").fetch();
List r=MyModel.find(“createdAt以(1,5,8)顺序显示的状态”).fetch();
如果它应该是一个参数:
List<Integer> s = Arrays.asList(1, 5, 8);
List<MyModel> r = MyModel.find("status in :s order by createdAt")
.bind("s", s).fetch();
List s=Arrays.asList(1,5,8);
List r=MyModel.find(“按createdAt排序的状态”)
.bind(“s”,s).fetch();
这里的一个要点是,由于Hibernate的限制,您可以在子句中仅对命名参数使用,而不能对位置(?
)参数使用。您尝试过吗
MyModel.find("status IN (:ids) ORDER BY createdAt").bind("ids", idExs).fetch();