2016-10-17 2 views
1

에 대한 최대 절전 모드의 작성 기준 쿼리 좀 도와 줄래이 내 쿼리입니다 : 내가 이것을 시도했지만 원하는 결과를 얻지 않는어느 한이 쿼리

select id from role_sub_module_mapping where role_id='165'; 

.

Criteria cr = super.getSession().createCriteria(RoleSubModule.class); 
cr.add(Restrictions.eq("roleId", '165')); 
+0

이 역할 ID = '165'여러 아이디의이 : 그것은 지금 대신 아이디를 얻기 위해 역할 ID 165

와 RoleSubModule 인스턴스의 목록을 반환, 당신은 Id 속성에 투사를 사용할 필요가 –

+0

시도해보십시오 .cr.add (Restrictions.eq ("roleId", 165)); – Unknown

+0

[ask] 및 [mcve]를 참조하십시오. 원하는 출력은 무엇입니까? – Mat

답변

0

귀하의 기준 쿼리

cr.add(Restrictions.eq("roleId", '165')); 

거의 정확합니다.

cr.setProjection(Projections.property("id"); 
+0

변수에서이 ID를 사용하여이 ID를 사용하여 행을 업데이트하는 방법 ... –

+0

당신이 쿼리를 실행하면 (예 : roleId가 고유하고 단일 결과를 제공한다고 가정하면 속성 ID는 숫자 형식입니다 (예 : Long). 'Number result = (Number) cr.uniqueResult(); long id = result.longValue(); ' uniqueResult는 다른 유형 (예 : Long, BigInteger)을 반환 할 수 있지만 속성이 숫자 인 경우 항상 숫자가됩니다. –

+0

roleId는 고유하지 않습니다 .165는 많은 레코드를 가질 수 있습니다. –

관련 문제