我正在尝试删除某些字符。
目前,我的输出类似于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'