SQL Server의 nvarchar
데이터 형식 열에서 앞에 오는 0을 모두 제거하려면 어떻게합니까?SQL Server의 nvarchar 열에서 선행 0 제거
예 :
0000000000245
0000000001270
SQL Server의 nvarchar
데이터 형식 열에서 앞에 오는 0을 모두 제거하려면 어떻게합니까?SQL Server의 nvarchar 열에서 선행 0 제거
예 :
0000000000245
0000000001270
당신은뿐만 아니라 암시 적 변환을 사용할 수 있습니다 - 적은 입력을
SELECT '0000000000245' + 0
이것은, 그러나, 더 복잡해진다이 NVARCHAR하지 않는 경우 항상은 (숫자를 포함 :-) 팀의 @하는 경우 위의 대답에는 문제가있을 수도 있습니다.). 그래서 ...이게 왜 nvarchar입니까? 대신 테이블을 정수형 컬럼으로 변경할 수 있습니까?
데이터 형식을 int로 변환하려고 시도합니다. 왼쪽 여백이 채워진 고정 너비 파일로 가져 왔습니다. –
사용 CAST
SELECT CAST('0000000000245' AS int),
CAST('0000000001270' AS int)
int
에 왜 당신은 처음부터 int
을 사용하지 않은? 선행 0을 표시하는 것은 프론트 엔드에 대한 작업입니다.
열에는 다양한 수의 0이 붙은 350 개의 레코드가 들어 있습니다. CAST를 사용하면 각 레코드에 대해 작성해야합니다. –
레코드의 수는 중요하지 않습니다. 단지'SELECT CAST (columnName AS int) as columnName ... '을 사용하십시오. –
다시 한번 감사드립니다. CAST는 작동했지만 데이터 유형을 nvarchar에서 int로 변환합니다. 추신. 데모 옵션을 좋아하십시오. 멋지다. –
아직 시도한 것이 있습니까? –