从 mysql 中的数据列中检索 Soundex 代码
Retrieving Soundex Codes from a Data Column in mysql
是否可以在 SQL 中进行这样的查询:有一列包含名称,假设是 FirstName,您需要获取列中每个名称的 soundex 代码并写入将这些代码添加到 FirstNamesdx 列中?
你在尝试这样的事情吗:
CREATE TABLE test_tbl(
first_name VARCHAR(50),
FirstNamesdx VARCHAR(50)
);
insert into test_tbl(first_name) values ('Earbuds'),
('Phone'),
('Charger'),
('Data Cable'),
('Speakers');
然后您可以使用具有相同 table 的更新来获取所需的值:
update test_tbl a
inner join
( select first_name, SOUNDEX(first_name) as soundex_first_name
from test_tbl
) as b
on a.first_name=b.first_name
set a.FirstNamesdx=b.soundex_first_name;
你有一个简单的方法:
update test_tbl
set FirstNamesdx= SOUNDEX(first_name);
演示:https://www.db-fiddle.com/f/pB6b5xrgPKCivFWcpQHsyE/8
结果:
是否可以在 SQL 中进行这样的查询:有一列包含名称,假设是 FirstName,您需要获取列中每个名称的 soundex 代码并写入将这些代码添加到 FirstNamesdx 列中?
你在尝试这样的事情吗:
CREATE TABLE test_tbl(
first_name VARCHAR(50),
FirstNamesdx VARCHAR(50)
);
insert into test_tbl(first_name) values ('Earbuds'),
('Phone'),
('Charger'),
('Data Cable'),
('Speakers');
然后您可以使用具有相同 table 的更新来获取所需的值:
update test_tbl a
inner join
( select first_name, SOUNDEX(first_name) as soundex_first_name
from test_tbl
) as b
on a.first_name=b.first_name
set a.FirstNamesdx=b.soundex_first_name;
你有一个简单的方法:
update test_tbl
set FirstNamesdx= SOUNDEX(first_name);
演示:https://www.db-fiddle.com/f/pB6b5xrgPKCivFWcpQHsyE/8
结果: