我正在尝试使用 companyName 查询 Companies 表,我想获取其 companyName(s) 包含查询字符串的公司,而不仅仅是其 companyName 与我的查询字符串完全匹配的公司。如果我使用的是 sql,我会使用 ---WHERE companyName LIKE %queryString% 语句。所以我的问题是如何在 sqflite 中进行这样的查询?现在我收到一个语法错误,因为 %
表结构
CREATE TABLE Companies(
id INTEGER PRIMARY KEY,
name TEXT,
email TEXT,
website TEXT,
about TEXT,
phone TEXT,
logo TEXT,
created_at TEXT
);
);
搜索代码
Future<List<CompanyModel>> filterCompanies(String filterCriteria) async {
final db =await database;
List<CompanyModel> filteredCompanies = [];
var res = await db.rawQuery("SELECT * FROM Companies WHERE name LIKE %?%;", [filterCriteria]);
if(res.length !=null){
for (var item in res){
filteredCompanies.add(JobModel.fromDb(item));
}
}
return filteredCompanies;
}
添加 % 时,出现语法错误。