我正在尝试删除某些字符。

目前,我的输出类似于cityname district,但我想删除cityname

SELECT Ort FROM dbo.tblOrtsteileGeo
WHERE GKZ = '06440004'

输出:
Büdingen Aulendiebach
Büdingen Büches
Büdingen Calbach
Büdingen Diebach
Büdingen Dudenrod
Büdingen Düdelsheim

所需的输出:
Aulendiebach
Büches
Calbach
Diebach
Dudenrod
Düdelsheim

最佳答案

您可以将Replace函数用作;

REPLACE ('Your String with cityname here', 'cityname', 'xyz')
--Results
'Your String with xyz here'

如果将此应用于表列stringColumnName, cityName both are columns of YourTable
SELECT REPLACE(stringColumnName, cityName, '')
FROM YourTable

或者,如果您要从列的输出中删除'cityName'字符串,则
SELECT REPLACE(stringColumnName, 'cityName', '')
FROM yourTable

编辑:既然您现在已经提供了更多详细信息,REPLACE函数并不是解决问题的最佳方法。遵循是另一种方法。 @MartinSmith也给出了很好的答案。现在,您可以选择再次选择。
SELECT RIGHT (O.Ort, LEN(O.Ort) - LEN(C.CityName)-1) As WithoutCityName
FROM   tblOrtsteileGeo O
       JOIN dbo.Cities C
         ON C.foo = O.foo
WHERE  O.GKZ = '06440004'

10-06 00:37