我需要从 mssql 表创建一个记录数据表,其中一列是有时拼写错误等的名称。这些记录是通过数据捕获器误读或其他原因的电子表格导入的。在VS中我可以选择“.”之后的所有字符。例如 & 对此进行 Like 查询。我不知道如何在 MSSQL 中做到这一点,因为这些是许多比赛的结果,相同的姓氏会出现多次,因此一旦姓氏被分组并再次遇到,就不要再次对其进行分组。例如“van der Merwe”、“van de Merwe”可以是同一个人或不同的人。
虽然作为一名自学的程序员并且之前通过阅读其他问题获得过帮助,但我不知道在这种情况下从哪里开始。如果有人遇到并解决了类似的需求,我真的很感激能为我指明最终能找到解决方案的方向。
您听说过 SOUNDEX 功能吗?
如果您看到上面的屏幕截图,“van der Merwe”和“van de Merwe”都有相同的输出,即 V500。
CREATE TABLE EMPLOYEE (
empId int,
name varchar(15),
dept varchar(10)
);
-- insert
INSERT INTO EMPLOYEE(empId,name,dept) VALUES (1, 'van der Merwe', 'Sales');
INSERT INTO EMPLOYEE(empId,name,dept) VALUES (2, 'van de Merwe', 'Accounting');
INSERT INTO EMPLOYEE(empId,name,dept) VALUES (3, 'Ava', 'Sales');
-- fetch
SELECT *,soundex(name) soundcode FROM EMPLOYEE;