You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter SQLite如何仅读取数据库中title列的数据?

Flutter SQLite 仅读取单列数据的最优方式

你完全不需要用rawQuery,Flutter SQLite的query方法本身就支持指定要读取的列,这是比rawQuery更简洁且贴合你现有代码风格的最优方案。

只需要给query方法添加columns参数,传入包含目标列名的列表即可,针对你的需求,就是传入['title']:

// 仅读取title列的数据
static Future<List<Map<String, dynamic>>> getTitles() async {
  final db = await SQLHelper.db();
  return db.query('items', columns: ['title'], orderBy: "id");
}

如果希望直接得到List<String>格式的结果(而非包含Map的列表),可以对返回结果做简单转换:

static Future<List<String>> getTitlesAsList() async {
  final db = await SQLHelper.db();
  final List<Map<String, dynamic>> maps = await db.query('items', columns: ['title'], orderBy: "id");
  return maps.map((map) => map['title'] as String).toList();
}

这种写法和你现有代码风格一致,利用了query方法的原生参数,比rawQuery更易读、更符合框架常规用法。

内容的提问来源于stack exchange,提问作者Renzo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 19:12:00