문자열의 첫 번째 부분과 마지막 부분을 비교하여 가운데 문자가 공백인지 확인하는 것입니다.
CREATE TABLE Companies
(
id int identity
, CompanyName varchar(50)
)
INSERT INTO Companies (CompanyName)
VALUES ('test')
, ('test test')
, ('testtest')
, ('testz test')
-- Just query the corrected list
SELECT CASE WHEN substring(CompanyName, LEN(CompanyName)/2+1, 1) = ' ' and substring(CompanyName, 1, LEN(CompanyName)/2) = substring(CompanyName, LEN(CompanyName)/2+2, LEN(CompanyName))
THEN substring(CompanyName, 1, LEN(CompanyName)/2)
ELSE CompanyName
END
FROM Companies
-- update the incorrect values
UPDATE Companies
SET CompanyName = substring(CompanyName, 1, LEN(CompanyName)/2)
WHERE substring(CompanyName, LEN(CompanyName)/2+1, 1) = ' '
AND substring(CompanyName, 1, LEN(CompanyName)/2) = substring(CompanyName, LEN(CompanyName)/2+2, LEN(CompanyName))
select * from Companies
drop table Companies
필드를 잘라내어 필요한 경우 짝수 개의 문자로 채우고 두 개의 동일한 부분으로 나누고 다시 트리밍 한 다음 다른 것과 똑같은지 확인하십시오. :) –
첫 번째, 말하자면, 8 문자를 가져 와서 CharIndex가 9 번째 위치에서 부분 문자열에 있는지 확인하십시오. –
GPS 제조업체 인 Tom Tom과 사업을하지 않기를 바랍니다. –