我有一个象形文字数据库。它由 kanji(字符本身)、meaning(意义)、on(中文阅读)、kun(日语阅读)字段组成。我正在尝试对 on 和 kun 字段进行搜索。这些字段包含如下字符串:“や(く)、や(き)、や(ける)、く(べる)”或此“かず、かぞ(える)、㼁ばしば、ら))ずらわ(しい)”。
假设我想找到读起来像やける的象形文字,但不是数据库中 on 和 kun 字段中的所有象形文字都包含子字符串 やける,例如,有些包含や(ける)。我事先不知道将括号放在哪里,例如,如果在 PHP 中替换它们。另外,我不想对数据库进行更改。
是否可以在不考虑括号的情况下使用 LIKE 实现搜索?或者是否可以使用 SQL 来实现这一点?
为什么不去掉括号。
Relpace(Relpace(source, '(', ''), ')', '') like '%' + Relpace(Relpace(searchingString, '(', ''), ')', '') + '%'
您可以通过规范化值来实现它。要搜索不带括号的やける:
为了使搜索在大容量上快速工作,即 使用了索引,您需要像这样创建它: