나는이 비닝 데이터를 생성하기 위해 최대 절전 모드 기준을 기반으로 다음과 같은 기능이 모두 같은 테이블 (잔류) 내에서 데이터를 꽤 잘 작동가입 테이블
private Criteria getCustomBinResultCriteriaSQL(double binSizeX, double binSizeY, String xVar, String yVar, String customBinQuery) {
return createCriteria(Residue.class)
.setProjection(Projections.projectionList()
.add(Projections.sqlGroupProjection(
"floor(" + xVar + "/" + binSizeX + ") * " + binSizeX + " as xBin, " +
"floor(" + yVar + "/" + binSizeY + ") * " + binSizeY + " as yBin, " +
"CAST (" + customBinQuery + " AS DOUBLE PRECISION) as customBinResult",
"xBin, yBin",
new String[] { "xBin", "yBin", "customBinResult" },
new Type[] { Hibernate.DOUBLE, Hibernate.DOUBLE, Hibernate.DOUBLE })))
.setResultTransformer(Transformers.aliasToBean(CustomBinResult.class));
}
,하지만의 말을하자 내 자료 구조는 다음과 같습니다
pdbentry: id pdbvar expmethod: id expvar residue: id resvar
pdbentry는 expmethod와 일대일의 관계를 갖고, 잔사 일대 다 관계.
위의 기준 작성 도구를 기반으로 잔여 물 테이블을 expmethod와 결합하는 방법은 무엇입니까? 그래서 다른 말로하면, "xvar"로 "expvar"를 가질 수 있으려면 기준에 무엇을 추가해야합니까?
내가 좋아하는 뭔가를 추가하는 시도 : 마지막에.setFetchMode("pdbentry", FetchMode.JOIN);
.setFetchMode("expmethod", FetchMode.JOIN);
,하지만 난 여전히 xVar로 "작성된 expvar"이나 "expmethod.expvar"를 골로 연결되지 못했습니다.
아이디어가 있으십니까?
여기에서 읽기 http://stackoverflow.com/questions/30215528/java-hibernate-projections-sqlgroupprojection-aliasing and here http://stackoverflow.com/questions/2345419/is-it-possible-to-get- 최대 - 절전 - 테이블 - sqlrestricti를위한 테이블의 별칭 - 별칭 - 테이블 – digz6666