在Winn购买Sweetbay之后,我试图更新两个包含帐户名称/building名称的表。account表有两个我想更新的列: name和internalname。名字栏应该是直接的,因为我会更新任何东西都像'Sweetbay%‘的记录,但是内部名称更棘手,它包含"Sweetbay超市-新坦帕“或'Sweetbay超市- Palmetto’这样的名字。在这些情况下,我想保留"-”之后的文本,所以它变成了"Winn-Dixie - New Tampa“或"Winn-Dixie - Palmetto”。
处理这件事最好的方法是什么?有什么建议吗?
此外,我还想开始清理"Winn“的命名约定,因为帐户”Winn“的实例应该包括"-”来标准化约定。我相信这方面的做法与上文所述相同。有什么想法?
发布于 2014-06-13 23:01:16
如果您提到的情况都在这里,那么尝试一些字符串操作(参见REPLACE和其他字符串函数在MSDN)。
例如。
UPDATE #Table
SET name = 'Winn-Dixie -' + RIGHT(Name, LEN(NAME) - CHARINDEX('-',Name))
WHERE name LIKE 'Sweetbay%'但在现实生活中,你不能查看所有的记录,识别每一个必要的更改,并围绕它进行编码。有一些工具专门针对这一点。试试查一下data cleansing。
我记得一次关于MS的数据质量项目(DQS)的介绍。这看起来很有希望,但我相信还有其他的工具。
最后,人与人之间的互动是不可避免的。
https://stackoverflow.com/questions/24212862
复制相似问题