다음과 같은 3 가지 쿼리를 작성했습니다.하지만 3 가지를 모두 조합하여 최종 쿼리를 작성해야합니다.SQL lite combine Query
쿼리 1 : 두 날짜 사이의 모든 레코드를 가져 오려면.
String selectQuery = "SELECT * FROM " + TABLE_ALL_RECORD_MAIN + " WHERE " + KEY_DATE + ">=" + fro + " AND " + KEY_DATE + "<=" + to + " OR " + OUTDATE + ">=" + fro + " AND " + KEY_OUTDATE + "<=" + to;
SQLiteDatabase db = this.getWritableDatabase();
Cursor cursor = db.rawQuery(selectQuery, null);
질의 2 : "to_amount"이 아닌 "from_amount"보다 크고 작은 모든 레코드를 얻으려면.
String selectQuery_amount = "SELECT * FROM " + TABLE_ALL_RECORD_MAIN + " WHERE " + KEY_AMOUNT + ">=" + from_amount + " AND " + KEY_AMOUNT + "<=" + to_amount;
SQLiteDatabase db = this.getWritableDatabase();
Cursor cursor = db.rawQuery(selectQuery_amount, null);
쿼리 3 : search_name과 일치하는 모든 레코드를 가져 오려면.
String selectQuery_amount = "SELECT * FROM " + TABLE_ALL_RECORD_MAIN + " WHERE " KEY_NAME + " like '" + search_name + "'";
SQLiteDatabase db = this.getWritableDatabase();
Cursor cursor = db.rawQuery(selectQuery_amount, null);
Reqiured 쿼리 :
1 모든 쿼리 위의 통합 쿼리를 작성합니다.
예 : 2014 년 4 월 5 일부터 2015 년 8 월 9 일까지 모든 레코드를 사용자 "Jack"의 금액 50000 ~ 60000으로 가져 오려면
where 절 뒤에 모든 쿼리 사이에 'AND'를 추가하십시오. 예 - ... 조건 1 AND 조건 등. – 7geeky