+=(문자열 연결 대입)(Transact-SQL)
적용 대상: Microsoft Fabric의 Microsoft Fabric SQL 데이터베이스에 있는 Microsoft Fabric Warehouse의 SQL Server Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System(PDW) SQL 분석 엔드포인트
두 문자열을 연결하고 문자열을 연산 결과로 설정합니다. 예를 들어 @x 변수가 'Adventure'와 같으면 @x += 'Works'는 @x의 원래 값을 가져오고, 이 문자열에 'Works'를 추가하고, @x를 새 값('AdventureWorks')으로 설정합니다.
구문
expression += expression
인수
expression
임의의 문자 데이터 형식 중 유효한 식입니다.
결과 형식
변수에 정의된 데이터 형식을 반환합니다.
설명
SET @v1 += 'expression'은 SET @v1 = @v1 + ('expression')과 같습니다. 또한 SET @v1 = @v2 + @v3 + @v4도 SET @v1 = (@v2 + @v3) + @v4와 동일합니다.
+= 연산자는 변수 없이 사용할 수 없습니다. 예를 들어 다음 코드를 실행하면 오류가 발생합니다.
SELECT 'Adventure' += 'Works'
예제
A. += 연산자를 사용한 연결
다음 예에서는 +=
연산자를 사용하여 문자열을 연결합니다.
DECLARE @v1 VARCHAR(40);
SET @v1 = 'This is the original.';
SET @v1 += ' More text.';
PRINT @v1;
결과 집합은 다음과 같습니다.
This is the original. More text.
B. += 연산자를 사용한 연결 시의 계산 순서
다음 예제에서는 여러 문자열을 연결하여 하나의 긴 문자열을 만든 다음, 최종 문자열의 길이를 컴퓨팅합니다. 이 예제에서는 연결 연산자 사용 시의 계산 순서 및 잘림 규칙을 보여 줍니다.
DECLARE @x VARCHAR(4000) = REPLICATE('x', 4000)
DECLARE @z VARCHAR(8000) = REPLICATE('z',8000)
DECLARE @y VARCHAR(max);
SET @y = '';
SET @y += @x + @z;
SELECT LEN(@y) AS Y; -- 8000
SET @y = '';
SET @y = @y + @x + @z;
SELECT LEN(@y) AS Y; -- 12000
SET @y = '';
SET @y = @y +(@x + @z);
SELECT LEN(@y) AS Y; -- 8000
-- or
SET @y = '';
SET @y = @x + @z + @y;
SELECT LEN(@y) AS Y; -- 8000
GO
결과 집합은 다음과 같습니다.
Y
-------
8000
(1 row(s) affected)
Y
-------
12000
(1 row(s) affected)
Y
-------
8000
(1 row(s) affected)
Y
-------
8000
(1 row(s) affected)
참고 항목
연산자(Transact-SQL)
+=(더하기 대입)(Transact-SQL)
+(문자열 연결)(Transact-SQL)