gpt4 book ai didi

android - 如何从 Android 查询 SQLite 数据库中的相似记录?

转载 作者:行者123 更新时间:2023-11-30 04:41:34 26 4
gpt4 key购买 nike

假设一个 SQLite 数据库列包含以下值:
U Walther-Schreiber-Platz

如果用户搜索以下字符串,我想使用查询查找此记录或任何类似的记录:

  • 瓦尔特施赖伯
  • 你会喜欢
  • walther-schreiber 广场
  • [任何其他类似的字符串]

但是我想不出任何可以做到这一点的查询。特别是如果用户没有输入 - 字符。

例子:
select * from myTable where value like '%walther schreiber%'; 由于缺少 - 而不会返回结果。

谢谢,罗伯特

最佳答案

因此,正如我在评论中所说,我认为您可以按照以下方式进行查询:

select * from myTable where LOWER(value) like <SearchValue>

我假设您正在收集 <SearchValue>以编程方式来自用户,因此能够执行以下操作:<SearchValue>需要:用户的搜索字符串,适当清理以避免 SQL injection attacks ,转换为小写,所有空格都转换为“%”,以便它们匹配零个或多个字符...

所以你会(例如):

select * from myTable where LOWER(value) like '%walther%schreiber%'
select * from myTable where LOWER(value) like '%walther-schreiber%platz%'

等等...但是,这确实假设词序是相同的,在您的示例中是...

关于android - 如何从 Android 查询 SQLite 数据库中的相似记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5889103/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com