Конкатенация строк в SQL Server 2005 - PullRequest
4 голосов
/ 04 декабря 2009

Кто-нибудь знает, как мне поступить с конкатенацией строки в SQL Server 2005.

Я имею в виду что-то вроде следующего сценария.

У меня есть столбец nvarchar (MAX) в базе данных SQL Server 2005.

Допустим, столбец имеет значение «A», и я хочу добавить «B», получая «AB», что является самым простым способом сделать это. Нужно ли делать выборку, объединять два значения в коде и обновлять столбец? Или есть более изящный способ сделать это?

Любые указатели очень ценятся.

Ответы [ 2 ]

8 голосов
/ 04 декабря 2009

В T-SQL:

     UPDATE table SET col = col + 'B' WHERE (PREDICATE THAT IDENTIFIES ROW)

Если бы вы использовали Oracle, это было бы:

     UPDATE table SET col = col || 'B' WHERE (PREDICATE THAT IDENTIFIES ROW)
2 голосов
/ 04 декабря 2009

Вы можете сделать что-то вроде этого

DECLARE @Table TABLE(
        Col VARCHAR(MAX)
)

INSERT INTO @Table (Col) SELECT 'A'

SELECT  Col + 'B'
FROM    @Table

UPDATE @Table
SET Col = Col + 'B'

SELECT * FROM @Table
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...