Android 使用字符串“查询数据库”;“男性或女性”;如果两个字符串均未选中,则返回所有结果

Android 使用字符串“查询数据库”;“男性或女性”;如果两个字符串均未选中,则返回所有结果,android,sql,android-room,Android,Sql,Android Room,如果@Query字符串值不返回结果,如何从文件室中的列返回所有结果 假设我的数据库中有学生列表,数据库包含一个性别栏,栏中的条目可以是“男性”或“女性”。我想使用一个@Query,它可以选择显示所有学生,男生或女生 复印机 // Constructor public Repository(Application application, String gender) { this.studentDao = db.StudentDao(); this.student = stude

如果@Query字符串值不返回结果,如何从文件室中的列返回所有结果

假设我的数据库中有学生列表,数据库包含一个性别栏,栏中的条目可以是“男性”或“女性”。我想使用一个@Query,它可以选择显示所有学生,男生或女生

复印机

// Constructor
public Repository(Application application, String gender) {
    this.studentDao = db.StudentDao();
    this.student = studentDAO.getStudents(gender);
}

@Query(“从学生表中选择*,其中mStudent=:性别或“%”)
LiveData getStudents(字符串性别或“%male”);
如果没有选择男性或女性,我希望看到所有学生返回LiveData。
我想您需要:

SELECT st.*
FROM student_table st
WHERE st.mStudent = :gender or :gender NOT IN ('Male', 'Female');
SELECT st.*
FROM student_table st
WHERE st.mStudent = :gender or :gender NOT IN ('Male', 'Female');