jmi*_*738 5 sql t-sql sql-server
我正在寻找有关如何解决同名拼写不同问题的建议.我有一个公司名称的SQL Server数据库,有些公司是相同的,但拼写是不同的.
例如:
Building Supplies pty
Buidings Supplies pty
Building Supplied l/d
Run Code Online (Sandbox Code Playgroud)
问题是变异中没有明显的一致性.有时它是额外的's',有时它是额外的空间.
不幸的是我没有查找列表,所以我不能使用模糊LookUp.我需要创建清单.
有没有人用来处理这个问题的方法?
ps我试图寻找这个问题,但似乎找不到类似的线程
谢谢
您可以用于SOUNDEX() DIFFERENCE()此目的。
DECLARE @SampleData TABLE(ID INT, BLD VARCHAR(50), SUP VARCHAR(50))
INSERT INTO @SampleData
SELECT 1, 'Building','Supplies'
UNION
SELECT 2, 'Buidings','Supplies'
UNION
SELECT 3, 'Biulding','Supplied'
UNION
SELECT 4, 'Road','Contractor'
UNION
SELECT 5, 'Raod','Consractor'
UNION
SELECT 6, 'Highway','Supplies'
SELECT *, DIFFERENCE('Building', BLD) AS DIF
FROM @SampleData
WHERE DIFFERENCE('Building', BLD) >= 3
Run Code Online (Sandbox Code Playgroud)
结果
ID BLD SUP DIF
1 Building Supplies 4
2 Buidings Supplies 3
3 Biulding Supplied 4
Run Code Online (Sandbox Code Playgroud)
如果这符合您的目的,您可以编写更新查询来相应地更新所选记录。
| 归档时间: |
|
| 查看次数: |
856 次 |
| 最近记录: |