programing

문자열에서 특정 문자 제거

lastmoon 2023. 6. 26. 21:35
반응형

문자열에서 특정 문자 제거

특정 문자를 제거하려고 합니다.

현재 저는 다음과 같은 출력을 가지고 있습니다.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함수는 문제를 정렬하는 가장 좋은 방법이 아닙니다.다음은 또 다른 방법입니다.또한 @Martin Smith는 좋은 대답을 했습니다.이제 다시 선택할 수 있습니다.

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'

한 가지 문제가 있습니다.REPLACE도시 이름에 지역 이름이 포함될 것입니다.이런 거 쓰시면 돼요.

SELECT SUBSTRING(O.Ort, LEN(C.CityName) + 2, 8000)
FROM   dbo.tblOrtsteileGeo O
       JOIN dbo.Cities C
         ON C.foo = O.foo
WHERE  O.GKZ = '06440004' 
UPDATE yourtable 
SET field_or_column =REPLACE ('current string','findpattern', 'replacepattern') 
WHERE 1

언급URL : https://stackoverflow.com/questions/14319141/remove-certain-characters-from-a-string

반응형