java - 比较街道名称

标签 java spring oracle performance ibatis

我使用Java、Spring、Ibatis、Oracle数据库。

在该数据库中,我们有 1 个表是 Street,包含 1000 万条记录,重要的列是 street_name

从GUI中,我必须按街道搜索公司,例如:输入的街道名称是Schonburgstrasse,但数据库中的正确数据是:Schönburgstrasse (德语)

你可以看到,主要的区别是: oö 。当然我无法通过 SQL 找到这条记录:

Select * from Street where street_name = 'Schonburgstrasse';

规则是:

  • 我无法再更改数据库架构。

  • 我无法将 10M 记录逐条标准化。之后比较数据

(标准化意味着,我将有函数将 From : Schönburgstrasse 转换为 : Schonburgstrasse)

  • 我必须处理性能问题。

感谢您的宝贵时间。

最佳答案

尝试使用 Oracle SOUNDEX命令,因此查询将如下所示:

Select * from Street where soundex(street_name) = soundex('Schonburgstrasse');

关于java - 比较街道名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47529018/

相关文章:

java - Ant 中无法识别的任务

java - `ThreadPoolTaskExecutor` 线程在Spring执行后没有被杀死

sql - Oracle 11g 选择不同而不是唯一

java - 非常基本的 Java 程序错误 ("Hello world")

java - ToneGenerator 会严重降低应用程序的速度

java - 为什么 spring-security-core 不包括 commons-logging?

java - 如何在请求中通过 id 引用实体

java - 当我运行 Spring 这个错误时常来?是这个版本的jar吗?

sql - 甲骨文 SQL : Getting average for past 3 month and add additional column

java - Oracle:Java 存储函数:使用数据库