Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Применимо к: Sql Server 2025 (17.x)
База данных
SQL Azure Управляемого экземпляра
SQL Azure в Microsoft Fabric
||= Объединение с помощью оператора составного назначения можно использовать для объединения выражения со значением символьной или двоичной строковой переменной, а затем назначить результирующее выражение переменной.
Оператор ||= поддерживает то же поведение, что и оператор += для символьных и двоичных строк.
Соглашения о синтаксисе Transact-SQL
Syntax
variable ||= expression
Arguments
variable
Переменная T-SQL типа символов: char, varchar, nchar, nvarchar, varchar(max)или nvarchar(max), или двоичного типа: binary или varbinary или varbinary(max).
expression
Символ или двоичное выражение. Если выражение не является типом символа, тип выражения должен быть неявно преобразован в строку символов.
Типы возвращаемых данных
Назначает результат оператора объединения для символьных строк переменной.
- Если переменная или выражение является значением SQL
NULL, результатом сцепленного выражения являетсяNULL. - Если переменная имеет тип данных большого объекта (LOB) (varchar(max) или nvarchar(max)), то результирующее выражение — varchar(max) или nvarchar(max).
- Если переменная имеет тип varbinary(max),результирующее выражение имеет тип varbinary(max).
- Если переменная не является типом бизнес-объекта, результат усечен до максимальной длины объявленного типа переменной.
Remarks
Если результат объединения строк превышает предел в 8 000 байт, то он усекается. Однако если хотя бы одна из строк сцеплена является большим типом значения, усечение не происходит.
При сцеплении двоичных строк с любыми символами между двоичными строками необходимо использовать явное преобразование в символьные данные.
Оператор ||= каналов доступен в Управляемом экземпляре SQL Azure с помощью политики обновленияsql Server 2025 или Always-up-to-date.
Строки и символы нулевой длины
Оператор ||= (объединение строк) ведет себя по-разному при работе с пустой строкой нулевой длины, чем при работе с NULLнеизвестными значениями. Символьная строка символа нулевой длины может быть указана в виде двух одинарных кавычек без каких-либо символов между ними. Двоичная строка нулевой длины может быть указана без 0x каких-либо байтовых значений, указанных в шестнадцатеричной константе. При сцеплении строки нулевой длины всегда сцепляются две указанные строки.
Объединение значений NULL
Как и при арифметических операциях, NULL выполняемых при NULL добавлении значения в известное значение, результат обычно является значениемNULL. Операция объединения строк, выполняемая со NULL значением, также должна привести к результату NULL .
Оператор ||= не учитывает SET CONCAT_NULL_YIELDS_NULL параметр и всегда ведет себя так, как если бы поведение ANSI SQL было включено, что дает NULL значение, если какой-либо из входных данных имеет значение NULL. Это основное различие в поведении между += операторами объединения.||= Дополнительные сведения см. в описании SET CONCAT_NULL_YIELDS_NULL.
Examples
A. Использование объединения с составным назначением для строк
DECLARE @v1 varchar(10) = 'a'
SET @v1 ||= 'b';
SELECT @v1
Вот результирующий набор.
ab
B. Использование объединения с составным назначением для двоичных данных
DECLARE @v2 varbinary(10) = 0x1a;
SET @v2 ||= 0x2b;
select @v2;
Вот результирующий набор.
0x1A2B
Связанный контент
- || (Объединение строк) (Transact-SQL)
- + (объединение строк) (Transact-SQL)
- += (назначение сцепления строк) (Transact-SQL)
- Изменить базу данных (Transact-SQL)
- CAST и CONVERT (Transact-SQL)
- Преобразование типов данных (ядро СУБД)
- Типы данных (Transact-SQL)
- Выражения (Transact-SQL)
- Встроенные функции (Transact-SQL)
- Операторы (Transact-SQL)
- SELECT (Transact-SQL)
- Инструкции SET (Transact-SQL)