2

私はSQLiteが初めてです。特定のユーザーの列からすべての行を抽出するために、このクエリを使用しています。

        Cursor c = db.query(true, TABLE, COLUMN, USER + "= '" + user + "'", null, null, null, null, null);

これはテーブルの例です:

|group-----ID|
|------------|
|one-------me|
|one------you|
|two-------me|
|one-------me|

したがって、ユーザー「me」のクエリは「one, two, one」を抽出します。一度だけ値を取得するために結果をフィルタリングするにはどうすればよいですか? 「ワン、ツー」みたいに

ありがとう

4

1 に答える 1

5

適切な列名で Group By パラメーターを使用します。

Cursor c = db.query(true, TABLE, COLUMN, USER + "= '" + user + "'", null,
            "group", null, null, null);

このメソッドには 9 つのパラメーターがあり、ほぼ同じメソッドが 3 つあるため...

public Cursor query(boolean distinct, 
                    String table, 
                    String[] columns, 
                    String selection, 
                    String[] selectionArgs, 
                    String groupBy,          /* this one */
                    String having, 
                    String orderBy, 
                    String limit)
于 2012-12-10T22:18:01.747 に答える