SQLite like语句用特殊的char替换空格

时间:2014-10-10 11:44:22

标签: android sqlite

我有一个带有城市列表的SQLlite数据库。 我的autoCompleteTextView链接到这个数据库,但我有一个问题。

我的数据库中有很多城市都是这样的:

圣特雷登
圣彼得斯 - 罗德
Sint-Rijkers等...

但很多用户只会输入Sint Truiden并且没有收到任何结果。

这是我到目前为止所做的:

String sql = "";
sql += "SELECT * FROM " + TABLE_CITIES;
sql += " WHERE " + KEY_NAME + " LIKE '%" + searchTerm + "%'";

如何调整SQL以实现目标?

1 个答案:

答案 0 :(得分:1)

一种解决方案是规范化搜索词数据库内容。例如,您可以向表中添加包含规范化名称的列。一些规范化示例:

  • 用一个空格替换任何类型的分隔符(短划线,点,多个空格)
  • 转换为小写
  • Remove accents