sqlprojection에서 결합 된 테이블의 별칭
-
20-08-2019 - |
문제
이 쿼리가 있습니다.
criteria = session.CreateCriteria(typeof (Building))
.CreateAlias("Estate", "estate")
.SetProjection(Projections.ProjectionList()
.Add(Property.ForName("Name"), "BuildingName")
.Add(Property.ForName("estate.Name"), "EstateName")
.Add(Projections.SqlProjection(
"(estate1_.BBRMunicipalityNumber + '-' + estate1_.BBREstateNumber + '-' + {alias}.BBRBuildingNumber)" + " as BBRNumber",
new[] { "BBRNumber" },
new[] { NHibernateUtil.String }),
"BBRNumber"))
SQL 문자열에 {Estate}를 쓰는 것과 같은 "Estate"에 대한 SQL 별칭을 얻을 수있는 방법이 있습니까? {Estate}는 작동하지 않습니다. 이제 SQL 문자열에서 별명을 하드 코딩했지만 그다지 견고하지는 않습니다.
문서를 올바르게 이해하면 이것이 가능해야합니다. NH2.0.1을 사용하고 있습니다.
/ASGER
해결책
귀하의 질문에 대한 직접적인 답변은 아니지만 다음과 같은 세 가지 값을 개별적으로 쿼리하고 데이터베이스를 사용하는 대신 코드에서 연결을 수행하지 않겠습니까?
귀하의 질문에 답하기 위해 : Hibernate V3 (Java, 죄송합니다)에서 getcolumnalias 프로젝션 인터페이스의 메소드. Nhibernate에서 그 상대방을 찾을 수 없습니다.
건배
다른 팁
{alias}를 사용할 수 있습니다 - 현재 프로젝션의 별칭을 참조합니다.
제휴하지 않습니다 StackOverflow