SQL의 nvarchar
문자열에서 여섯 번째 문자를 제거해야합니다. 나는 열에 대해 모든 행에서 이것을해야한다. 예를 들어문자열에서 여섯 번째 문자를 제거하십시오.
:
111116111111
모든 레코드의 길이는 12
자, 그래서 그것을 11
문자를 확인하고 6
일을 제거해야합니다.
누구든지 나를 도와 줄 수 있습니까? 고맙습니다.
SQL의 nvarchar
문자열에서 여섯 번째 문자를 제거해야합니다. 나는 열에 대해 모든 행에서 이것을해야한다. 예를 들어문자열에서 여섯 번째 문자를 제거하십시오.
:
111116111111
모든 레코드의 길이는 12
자, 그래서 그것을 11
문자를 확인하고 6
일을 제거해야합니다.
누구든지 나를 도와 줄 수 있습니까? 고맙습니다.
당신은
UPDATE table
set column = LEFT(column,5) + RIGHT (column,6)
을 할 수하지만 어쩌면 사람이 같은 결과를 달성하는 애호가 방법이있다.
select left([ColumnName],5)+right([ColumnName],6)
등 다음과 같이 :
declare @Something as nvarchar(12)
set @Something = '111116111111'
select @Something, left(@Something,5)+right(@Something,6)
는 (예 : 숫자로 데이터 형식 NVARCHAR을 변환 할 수 없습니다 등) 변환 오류를 제공하는 경우, 당신은 표현의 양면을 캐스팅 할 수 있습니다.
STUFF() 기능을 사용하여이를 수행 할 수도 있습니다.
DECLARE @STRING VARCHAR(20) = '111116111111'
SELECT STUFF(@STRING, 6, 1, '')
Result : '11111111111'
UPDATE
UPDATE table
SET Column_Name = STUFF(Column_Name, 6, 1, '')
WHERE LEN(Column_Name) = 12
안녕하세요 우리는 모든 일이, 감사이
declare @Something as nvarchar(12)
set @Something = '111116111111'
select CASE WHEN LEN(@Something) >= 12 THEN STUFF(@Something,6,1,'')
ELSE @Something END
or else 6 value is constant then we can use replace function
declare @Something as nvarchar(12)
set @Something = '111116111111'
Select REPLACE(@Something,6,'')
같은 쿼리를 작성할 수있는 길이에 내놓고을 할 수있는 2 가지 방법이 있습니다. – Jeff