[sql] SQL Server의 문자열에서 모든 공백을 제거하십시오.
SQL Server 2008의 문자열에서 모든 공백을 제거하는 가장 좋은 방법은 무엇입니까?
LTRIM(RTRIM(' a b '))
문자열의 오른쪽과 왼쪽에있는 모든 공백을 제거하지만 중간의 공백도 제거해야합니다.
답변
간단히 교체하십시오.
SELECT REPLACE(fld_or_variable, ' ', '')
편집 :
명확히하기 위해; 자사의 글로벌 대체, 아무 필요가 없다 trim()
중 하나에 대해 여러 공간에 대한 또는 걱정 char
또는 varchar
:
create table #t (
c char(8),
v varchar(8))
insert #t (c, v) values
('a a' , 'a a' ),
('a a ' , 'a a ' ),
(' a a' , ' a a' ),
(' a a ', ' a a ')
select
'"' + c + '"' [IN], '"' + replace(c, ' ', '') + '"' [OUT]
from #t
union all select
'"' + v + '"', '"' + replace(v, ' ', '') + '"'
from #t
결과
IN OUT
===================
"a a " "aa"
"a a " "aa"
" a a " "aa"
" a a " "aa"
"a a" "aa"
"a a " "aa"
" a a" "aa"
" a a " "aa"
답변
답변
테이블에 대한 업데이트 인 경우 행 0에 영향을 줄 때까지이 업데이트를 여러 번 실행하면됩니다.
update tableName
set colName = REPLACE(LTRIM(RTRIM(colName)), ' ', ' ')
where colName like '% %'
답변
REPLACE(field, ' ', '')
답변
먼저 샘플 테이블 및 데이터를 작성하십시오.
CREATE TABLE tbl_RemoveExtraSpaces
(
Rno INT
,Name VARCHAR(100)
)
GO
INSERT INTO tbl_RemoveExtraSpaces VALUES (1,'I am Anvesh Patel')
INSERT INTO tbl_RemoveExtraSpaces VALUES (2,'Database Research and Development ')
INSERT INTO tbl_RemoveExtraSpaces VALUES (3,'Database Administrator ')
INSERT INTO tbl_RemoveExtraSpaces VALUES (4,'Learning BIGDATA and NOSQL ')
GO
추가 공백없이 문자열을 선택하는 스크립트 :
SELECT
[Rno]
,[Name] AS StringWithSpace
,LTRIM(RTRIM(REPLACE(REPLACE(REPLACE([Name],CHAR(32),'()'),')(',''),'()',CHAR(32)))) AS StringWithoutSpace
FROM tbl_RemoveExtraSpaces
결과:
Rno StringWithSpace StringWithoutSpace
----------- ----------------------------------------- ---------------------------------------------
1 I am Anvesh Patel I am Anvesh Patel
2 Database Research and Development Database Research and Development
3 Database Administrator Database Administrator
4 Learning BIGDATA and NOSQL Learning BIGDATA and NOSQL
답변
100 % 일
UPDATE table_name SET "column_name"=replace("column_name", ' ', ''); //Remove white space
UPDATE table_name SET "column_name"=replace("column_name", '\n', ''); //Remove newline
UPDATE table_name SET "column_name"=replace("column_name", '\t', ''); //Remove all tab
"column_name"
또는 사용할 수 있습니다column_name
감사
서브 로토