2016-07-28 2 views
0

이것은 왼쪽 조인을 포함하는 원시 쿼리이며 STUDENT_NAME에 의해 오름차순으로 목록을 만듭니다.정렬 기준 : Sqlite

외부에서이 검색어로 ORDER BY STUDENT_DETAILS.STUDENT_NAME ASC을 전달하고 싶습니다. (나는 때때로 ASC를 때때로 DESC로 만들고 싶다.)

원시 쿼리에서이를 구현하는 방법은 무엇입니까?

cursor = db.rawQuery(
     "SELECT * 
     FROM STUDENT 
     LEFT JOIN STUDENT_DETAILS ON 
        STUDENT.STUDENT_ID=STUDENT_DETAILS.STUDENT_ID 
     WHERE STUDENT.START_DATE <= ? AND STUDENT.EXPIRED_DATE >= ? 
     ORDER BY STUDENT_DETAILS.STUDENT_NAME ASC", 
     new String[]{date, date} 
     ); 
+1

현재 코드에 어떤 문제가 있습니까? –

답변

2

단지 만들 쿼리는 사용자의 요구

String addictionalState = "ASC"; 
if (something) 
    addictionalState = "DESC"; 

cursor = db.rawQuery(
     "SELECT * FROM STUDENT LEFT JOIN STUDENT_DETAILS ON STUDENT.STUDENT_ID=STUDENT_DETAILS.STUDENT_ID WHERE STUDENT.START_DATE <= ? AND STUDENT.EXPIRED_DATE >= ? ORDER BY STUDENT_DETAILS.STUDENT_NAME "+addictionalState , 
     new String[]{date, date} 
     ); 

에 따라 또는 당신은/해시 맵과를 나열하는 결과를 전달할 수있는 종류의 당신이 필요로한다.

+0

이 작동합니다. 감사 – tenten