SQL 상용 함수 Stuff ()

2947 단어 sql
STUFF ( character_expression , start , length ,character_expression )  매개 변수  character_expression  문자 데이터 표현 식character_expression 상수, 변수 일 수도 있 고 문자 열 이나 바 이 너 리 데이터 열 일 수도 있 습 니 다.
start  삭제 와 삽입 의 시작 위 치 를 지정 하 는 정수 값하면, 만약, 만약... start 혹시 length 마이너스 이면 빈 문자열 을 되 돌려 줍 니 다.하면, 만약, 만약... start 첫 번 째 character 보다expression 길 면 빈 문자열 을 되 돌려 줍 니 다.start 이 가능 하 다, ~ 할 수 있다,... bigint 유형
length  삭제 할 문자 수 를 지정 하 는 정수 입 니 다.하면, 만약, 만약... length 첫 번 째 character_expression 길 면 마지막 character 까지 삭제expression 마지막 문자 입 니 다.length 이 가능 하 다, ~ 할 수 있다,... bigint 유형
반환 형식  하면, 만약, 만약... character_expression 지원 하 는 문자 데이터 형식 이면 문자 데 이 터 를 되 돌려 줍 니 다.하면, 만약, 만약... character_expression 지 지 를 받 고 있 습 니 다. binary 데이터 형식 은 바 이 너 리 데 이 터 를 되 돌려 줍 니 다.
비고  시작 위치 나 길이 가 마이너스 이거 나 시작 위치 가 첫 번 째 문자열 의 길이 보다 크 면 빈 문자열 로 돌아 갑 니 다.첫 번 째 문자열 의 길이 보다 길 이 를 삭제 하려 면 첫 번 째 문자열 의 첫 번 째 문자 로 삭 제 됩 니 다.  결과 값 이 반환 형식 지원 의 최대 값 보다 크 면 오류 가 발생 합 니 다.
예시  다음 예제 는 첫 번 째 문자열 에 있 습 니 다. abcdef 삭제 2 위치 b) 시작 하 는 세 글자, 그리고 삭 제 된 시작 위치 에 두 번 째 문자열 을 삽입 하여 문자열 을 만 들 고 되 돌려 줍 니 다.
SELECT STUFF('abcdef', 2, 3, 'ijklmn'); 
stuff(select ',' + fieldname  from tablename for xml path('')),1,1,'')
           fieldname         ,     。
   
fieldname
-----------
AAA
BBB
CCC
         : AAA,BBB,CCC
for xml path SQL Server 2005           XML   。      ,       。
stuff                    。

Stuff (expression 1 Str, startIndex, lengthInt, expression 2 Str) 함수 에는 모두 네 개의 인자 가 있 습 니 다.
그 기능 은 expression 1Str 에서 startIndex 위치 에서 lengthInt 문 자 를 삭제 한 다음 expression 2 를 expression 1 에 삽입 합 니 다.Str 의 startIndex 위치 입 니 다.startIndex 1 부터.
데이터베이스 테이블 에 세 개의 필드 가 있 습 니 다. xxxx - xxxxx - xxxxx xxx 형식 으로 출력 해 야 합 니 다. 그 중에서 해당 하 는 자릿수 에 만족 하지 않 으 면 뒤에 빈 칸 을 보충 합 니 다. 즉, 23, 1234, 879 와 같은 세 개의 수 를 다음 과 같은 형식 으로 보고서 에 출력 합 니 다. 23 -1234__-879___의 형식 출력, 레이 블 색상 의 밑줄 색상 은 빈 칸 을 의미 합 니 다.
STUFF (SPACE (4), 1, LEN ('23'), '23') + '-' + STUFF (SPACE (6), 1, LEN ('1234'), '1234') + '-' + STUFF (SPACE (6), 1, LEN ('879'), '879') 로 전환 하면 자연히 23 -1234__-879___됐어.
Stuff 함수 다른 해석
select stuff('string1',,,'string2')
예시:
select stuff('youxiaofeng',2,1,'F')
두 번 째 문자 부터 한 문 자 를 삭제 한 다음 'F' 로 문 자 를 삭제 할 위 치 를 대체 합 니 다. 문 자 를 삭제 할 필요 가 없 으 면 'length to delete from string 1' 을 0 으로 설정 하면 됩 니 다.
주의: < starting position > 또는 < length to delete from string 1 > 이 마이너스 이거 나 < starting position > 이 < string 1 > 보다 큰 길이 라면 STUFF 함 수 는 NULL 로 되 돌아 갑 니 다. 명령 의 < length to delete from string 1 > 이 < starting position > 위치 에서 < string 1 > 끝 에 있 는 문자 수 보다 길 면 이 함 수 는 < string 1 > 을 < starting position - 1 > 에서 절단 합 니 다.

좋은 웹페이지 즐겨찾기