问题标签 [soundex]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1436 浏览

sql-server - 如何按有拼写错误的列分组

在处理一些遗留数据时,我想将数据分组到一个列上,忽略拼写错误。我认为 SOUNDEX() 可以完成这项工作以达到预期的结果。这是我尝试过的:

但是(显然)SOUNDEX 在这样的结果行中返回了 4 个字符的代码,丢失了实际的字符串:

我如何将组中的至少一个事件包含到查询结果中而不是 4 个字符的代码中。

0 投票
2 回答
1958 浏览

sqlite - SQLite soundex 字符串长度

sqlite 中的 soundex 函数是否对字符串长度有限制?正如我发现的结果

都是相同的值,等于 S536,但是结果:

每个字符串都不同,值是

请任何人解释为什么?

0 投票
0 回答
278 浏览

php - MYSQL 中的 SOUNDEX 函数

如果我遇到以下问题,如何使用 soundex 函数:

现在,如果我想获取名称字段包含“Kap”的任何 soundex 值的所有行。

如果我输入“Cap”,那么它应该给我两行,如果我输入“Kup”,那么它也应该给我。

任何人都可以建议我一个解决方案吗?

到目前为止,我想出了这个解决方案:

但是,如果“名称”字段中只有一个单词,则此查询可以正常工作。

0 投票
1 回答
327 浏览

mysql - Soundex 与逗号分隔的子查询比较?

我正在对用户表执行 soundex 查询。用户的子查询以逗号分隔的字符串列表形式提供。

我想做类似于以下的事情,但我找不到写语法来完成这项工作。

稍后我计划通过将 soundex 值映射到列 id 的表来优化此查询,但是,我现在不确定当我的子查询是逗号分隔列表时是否可以引用匿名列?如何添加别名,或者如何将此列表转换为 soundex 值列表以进行比较?

0 投票
1 回答
1866 浏览

mysql - Mysql - 计算两个字符串之间的soundex差异

我有一些歌曲名称和它们预先计算的 soundex 存储在 mysql 表中。我想将用户输入的 soundex 与预先计算的 soundex 进行比较。并按照用户输入和歌曲名称的差值升序得到结果。

我尝试了以下查询(在java中):

但是 strcmp 只返回 1,0 或 -1。所以排序不正确。

也试过WHERE pre_calculated_soundex=SOUNDEX(user_input)了,但这只是返回完全匹配的 soundex。

0 投票
1 回答
376 浏览

mysql - 如何在列中执行 MySQL 智能文本搜索?

我正在尝试在其中一个 MySQL 表中搜索商店名称,该表有一个名为 fullname 的字段。截至目前,我正在使用 MySQL 的 SOUNDS LIKE 方法,但是这是一个失败的示例:

假设我有字符串 Banana's Shop。然后使用 SOUNDS LIKE 查询 'nana' 或 'bananas' 不会给我结果。这是我当前的查询:

有没有更好的方法在 MySQL 中进行这样的简单搜索,这样更智能,这样拼写错误也仍然匹配?

0 投票
1 回答
4197 浏览

mysql - Mysql 等价于 php metaphone 和 soundex

我正在开发一个应用程序,在该应用程序中获取用户当前正在播放的歌曲标题,我们在 mysql 数据库中查看还有谁在播放类似的歌曲。因为同一首歌曲可能在每个人的手机上都有许多不同的标题,我们需要一种方法来有效地找到尽可能接近的结果。

我们现在使用的过程从表中获取所有歌曲,然后执行一次 foreach 并将结果集中的每个条目与用户的歌曲进行比较。这是我们使用的函数的一部分:

========================================

这里有 2 个自定义函数:

但我知道这是一种非常糟糕的做法。如果数据库中有大量条目,可能需要永远一一比较它们。

谁能告诉我这里应该遵循的正确方法。

谢谢卡拉姆

0 投票
1 回答
984 浏览

sql - 如果它们具有相似的名称/值,则 sql 加入 2 个表

我正在尝试加入 2 个具有公共列“NAME”的表,但数据的排序如下:


表A


表 B


以上是我遇到的案例。这真的很难看,但是让我认为 sql 可能的一件事是两个表中至少一个单词的拼写是相同的。

但是,我尝试过 soundex,但代码实际上不是英文的,所以它不起作用(上面只是我用英文编的一个例子)。我已经尝试过差异功能,但它也没有工作(一切都有价值 4,我猜是因为它不是英文的?我不确定)。

我尝试逐个字母地加入,但它也没有奏效。我希望是否有其他方法可以做到这一点。我正在使用 sqlcanvas,数据库是 sybase。两张表都有近 30 列和约 12,000 行

0 投票
2 回答
900 浏览

mysql - mysql中soundex的反转

将返回“R500”

有没有办法输入'R500'并返回'ram'

像这样的东西

0 投票
0 回答
36 浏览

soundex - 使用 soundex 合并表

我有一个巨大的类似听起来条目的表(大约 500 个)以及它们旁边的订单号:例如。

苯并 3000、苯 209、苯甲酸 800、. . . 克里特 20,克里蒂斯 333,

等等

请注意,前 3 个字母并不总是相同,但名称发音相似。我一直在尝试找出一个系统来找到所有类似的发音条目,将它们全部整理成 1 并将它们的订单值相加。我已经尝试过 Soundex,因为它通过类似的发音字母进行搜索,但是我无法对其进行修改,使其包含多个条目并包括其旁边的订单总和。

有没有人对更简单的方法有任何建议?非常感谢你