iOS-如何使用SQLite.swift进行不区分重音的搜索?
我正在使用SQLite.swift。 有没有办法在SQLite中执行不区分重音的查询?例如,此查询:iOS-如何使用SQLite.swift进行不区分重音的搜索?,ios,search,diacritics,sqlite.swift,Ios,Search,Diacritics,Sqlite.swift,我正在使用SQLite.swift。 有没有办法在SQLite中执行不区分重音的查询?例如,此查询: SELECT * FROM users WHERE name LIKE "thu%" 将返回: thử thu thư etc. 发件人: 我们可以通过在数据库连接上调用createCollation来创建自定义排序序列 try db.createCollation("NODIACRITIC") { lhs, rhs in return lhs.compare(rhs, option
SELECT * FROM users WHERE name LIKE "thu%"
将返回:
thử
thu
thư
etc.
发件人:
我们可以通过在数据库连接上调用createCollation
来创建自定义排序序列
try db.createCollation("NODIACRITIC") { lhs, rhs in
return lhs.compare(rhs, options: .DiacriticInsensitiveSearch)
}
我们可以使用collation
枚举的custom
成员引用自定义排序规则
restaurants.order(collate(.Custom("NODIACRITIC"), name))
// SELECT * FROM "restaurants" ORDER BY "name" COLLATE "NODIACRITIC"
在您的情况下,您可以随后执行以下查询:
SELECT * FROM users WHERE name COLLATE NODIACRITIC LIKE 'thu%'
我已经添加了您的代码并执行了查询,但没有成功。在建立db连接后,我必须将此代码放在正确的位置?我尝试过使用您的语法进行其他查询,但出现了以下错误:
使用未解析的标识符“collate”
您有一个示例如何让它工作?我这一天都在为这件事烦恼。