안드로이드에 연동하여 하고 있는데요.
제가 id ; name ; count 이렇게 테이블을 생성했어요.
count 컬럼을 정렬하여 그중 큰수 5개를 뽑는 쿼리문을 작성하고있는데..
// Contacts table name
private static final String TABLE_CONTACTS = "contacts";
// Contacts Table Columns names
private static final String KEY_ID = "id";
private static final String KEY_NAME = "name";
private static final String KEY_COUNT = "count";
String selectQuery = "SELECT * FROM "
+ "(SELECT * FROM " + TABLE_CONTACTS +" ORDER BY " + KEY_COUNT + " DESC)"
+ " LIMIT 5";
이렇게 하면
D/Name:: Id: 1 ,Name: ㄱ ,Count: 48
D/Name:: Id: 2 ,Name: ㄴ ,Count: 0
D/Name:: Id: 3 ,Name: ㄷ ,Count: 0
D/Name:: Id: 4 ,Name: ㄹ ,Count: 2
D/Name:: Id: 5 ,Name: ㅁ ,Count: 12
D/Name:: Id: 6 ,Name: ㅂ ,Count: 0
D/Name:: Id: 7 ,Name: ㅅ ,Count: 5
D/Name:: Id: 8 ,Name: ㅇ ,Count: 0
D/Name:: Id: 9 ,Name: ㅈ ,Count: 0
D/Name:: Id: 10 ,Name: ㅊ ,Count: 0
D/Name:: Id: 11 ,Name: ㅋ ,Count: 0
D/Name:: Id: 12 ,Name: ㅌ ,Count: 0
D/Name:: Id: 13 ,Name: ㅍ ,Count: 0
D/Name:: Id: 14 ,Name: ㅎ ,Count: 3
D/Name:: Id: 15 ,Name: ㅏ ,Count: 6
D/Name:: Id: 16 ,Name: ㅑ ,Count: 0
D/Name:: Id: 17 ,Name: ㅓ ,Count: 5
D/Name:: Id: 18 ,Name: ㅕ ,Count: 0
D/Name:: Id: 19 ,Name: ㅗ ,Count: 49
D/Name:: Id: 20 ,Name: ㅛ ,Count: 4
D/Name:: Id: 21 ,Name: ㅜ ,Count: 1
D/Name:: Id: 22 ,Name: ㅠ ,Count: 0
D/Name:: Id: 23 ,Name: ㅡ ,Count: 0
D/Name:: Id: 24 ,Name: ㅣ ,Count: 5
I/System.out: ///////////////////////////////////////////////////////////////////
탑5를 뽑으면
D/Name:: Id: 15 ,Name: ㅏ ,Count: 6
D/Name:: Id: 7 ,Name: ㅅ ,Count: 5
D/Name:: Id: 17 ,Name: ㅓ ,Count: 5
D/Name:: Id: 24 ,Name: ㅣ ,Count: 5
D/Name:: Id: 19 ,Name: ㅗ ,Count: 49
49 부터 출력되길 원하는데.. 6부터 나와요.. 이유를 잘 모르겠어요 ㅜ
왜 이렇게 출력되는걸까요?
String selectQuery = "SELECT * FROM "
+ TABLE_CONTACTS +" ORDER BY " + KEY_COUNT + " DESC limit 5";
이렇게도 해봤는데 출력값은 그대로더라구요..