当我SELECT something FROM sometable
时,有一个字段包含something
列(类别)中拼写错误的字词。如何在不修改数据库表本身的情况下更正它?例如,对于something
中的每件事,如果事物的值等于/包含sophiscate
,请将其选为sophisticate
。
答案 0 :(得分:4)
SELECT REPLACE(ColName, 'Sophiscate', 'Sophisticate') AS ColName FROM SomeTable
如果由于某种原因REPLACE不适合您,您也可以使用CASE语句。
SELECT CASE WHEN ColName = 'Sophiscate' THEN 'Sophisticate' ELSE ColName END AS ColName FROM SomeTable
答案 1 :(得分:3)
你可以像这样使用REPLACE()函数:
SELECT REPLACE(somthing,'sophiscate','sophisticate')
FROM sometable
答案 2 :(得分:2)
您可能需要的是MDM(Master Data Management)系统,您可以在其中拥有一个或多个表,这些表存储一个值与另一个值之间的映射。对于给定的数据类型或变量,您将(例如)“Conformed”值映射到“unsformed”值。因此,保留原始数据(在输出图层中创建),可以根据数据大小在视图或表格中显示数据中的一致值。
微软对此的实现是Master Data Services,它的功能远远超过我的描述。
我们使用自行开发的MDM来映射我们希望一起映射的数据中的更改或错误。
这取决于您的应用程序/数据/数据拓扑,如果这是一个合适的解决方案。