0

如何从INNER JOIN结果中检索所有列的数据?我使用这个查询:

SELECT course.course_title, 
       course.course_body, 
       course. course_image, 
       instructor.instructor_title, 
       instructor.instructor_body, 
       instructor.instructor_photo
FROM  course
INNER JOIN instructor
ON  course.course_instructor1=instructor.instructor_nid
WHERE course_id=4

COURSE_OUTLINE这是我将用来执行的等效变量

String COURSE_OUTLINE = 
        "SELECT " + Qualified.COURSE_TITLE + ", " 
                  + Qualified.COURSE_BODY + ", " 
                  + Qualified.COURSE_IMAGE + ", "
                  + Qualified.INSTRUCTOR_TITLE + ", "
                  + Qualified.INSTRUCTOR_BODY + ", "
                  + Qualified.INSTRUCTOR_IMAGE + ", " +
        "FROM "   + Tables.COURSE_JOIN_INSTRUCTOR +
        "WHERE "  + CourseColumns.COURSE_ID + 
        "=?";

在我的代码中,

Cursor cur = mSqliteDb.rawQuery(SubQuery.COURSE_OUTLINE, new String[] {position});

这给出了 1 条记录。我知道如何从特定列中检索数据,但我不确定如何从所有列中检索数据。

这是我用来从特定列检索数据的代码

public String getCourseImage(int position) {
    String image = "";
    String pos = Integer.toString(position);

    Cursor cur = mSqliteDb.rawQuery(SelectQuery.ALL_COURSES, new String[] {pos});
    if (cur != null) {
        if (cur.moveToFirst()) {
            do {
                image = cur.getString(cur.getColumnIndex(CourseColumns.COURSE_IMAGE)); 
            } while (cur.moveToNext());
        }
        cur.close();
    }
    return image;
}

我的意图是将列中的每个数据映射到View

4

1 回答 1

0

getColumnNames为您提供一个包含所有列的数组......如果这就是您要问的。这有点难说。

于 2013-01-25T07:33:02.527 回答