2014-01-30 4 views
0

으로 변환합니다. 두 열이있는 GroovyRowResult (sql.rows 사용)이 있습니다. 첫 번째 열은 sql에 그룹 by을 가지고 있으므로 항상 고유합니다.두 개의 열이 매핑 된 sql.GroovyRowResult를

이제 전체 결과를 키로 첫 번째 열 값과 두 번째 열 값을 값으로 포함하는지도로 변환하고 싶습니다. 나는 모든 행마다 (아래 참조)이 작업을 수행 할 수 있다는 것을 알고 있지만, 더 좋은 aproeach가 있는지 궁금해하고있었습니다. 내가 찾은 유일한 것은 작동하지 않는 entrySet()입니다. 오류는 다음과 같습니다

Message: No signature of method: 
java.util.ArrayList.entrySet() is applicable for argument types:() values: []) 

그래서 내 각 행 방법은 다음과 같습니다

def myMap = [:] 
result.each { 
    myMap.put(it.colum1, it.column2) 
} 
또 다른 대안이 될 것

, 키 바와 같이, 제 1 열이 나에게지도를 반환하는 방법으로 쿼리를 만들기 위해 두 번째 값은 값 (또는 값으로 전체 행)으로 표시됩니다. 종류의 젠드 프레임 워크 fetchAssoc() 메소드.

답변

4

당신은 할 수 :

def myMap = result.collectEntries { 
    [ it.column1, it.column2 ] 
} 
관련 문제