如何在DBFlow Android

时间:2016-10-27 05:18:41

标签: android database dbflow

您好我正在尝试在DbFlow中获取一个列列表

我使用此

时会收到所有比赛详情
 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?

1 个答案:

答案 0 :(得分:0)

我想实现相同的目标,但我无法获得列类型值,因为queryList()查询语句以TModel形式返回的所有结果(您的表类匹配) 。我最终得到了以下内容:

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();