播放!框架没有按功能分组。缺乏功能真的开始让我感到烦恼。我该如何解决这个问题?我希望byRouteId
按trip_headsign分组。简单的原始查询看起来像:
SELECT *
FROM trips
WHERE route_id = 1070
GROUP BY trip_headsign
这是我的Trip.java
@Entity
@Table(name="trips")
public class Trip extends Model {
@Constraints.Required
public String route_id;
@Constraints.Required
public String service_id;
@Id
public String trip_id;
public String trip_headsign;
public String direction_id;
public String block_id;
public String shape_id;
@ManyToOne
@JoinColumn(name="route_id")
public TRoute troute;
public static List<Trip> byRouteId(String route_id) {
List<Trip> trips =
Trip.find
.fetch("troute") // fetch TRoute properties.
.where().like("route_id", route_id)
.findList();
return trips;
}
public static Finder<String, Trip> find = new Finder(
String.class, Trip.class
);
}
答案 0 :(得分:0)
您可以使用原始SQL查询,而不是使用来自javax.persistence的EntityManager类的createNativeQuery函数。
EntityManager em = play.db.jpa.JPA.em();
List<Trip> tripList = em.createNativeQuery("insert raw sql query here").getResultList();