0

こんにちは、DbFlow で 1 つの列リストを取得しようとしています

これを使用すると、すべての試合の詳細を取得できます

 public List<Match> getMatchDetails() {
        return SQLite.select()
                .from(Match.class)
                .queryList();
    }

しかし、実際にはすべての試合のスコアのリストが必要なので、このようなスコアの詳細を取得しようとしました。

  public List<String> getScore() {
        return SQLite.select(Match_Table.score)   // (score is string)
                .from(Match.class)
                .queryList();
    }



 But still I can fetch details as List<Match> and not List<String>. Am I doing anything wrong?
4

1 に答える 1

0

私は同じことを達成したかったのですが、queryList() はステートメントが DB カーソルから TModel (テーブル クラス Match) の形式で返すすべての結果を照会するため、列の型の値を取得できませんでした。私は次のようになりました:

public List<String> getScore() {
    List<String> result = new ArrayList<>();
    for (Match match: SQLite.select(Match_Table.score).from(Match.class).queryList()) {
        result.add(match.getScore());
    }
    return result;
}

これは単一のクエリに対して実行できますが、リストに対して達成する方法が見つかりませんでした:

String score = SQLite.select(Match_Table.score).from(Match.class).where(Condition.column(Match_Table.score.getNameAlias()).is("somescore")).querySingle().getScore();
于 2016-10-27T19:32:49.013 に答える