共用方式為


字串串連運算子 (Database Engine)

字串串連運算子的符號為加號 (+)。您可以將二或多個字元字串合併或串連成一個字元字串。您也可以串連二進位字串。以下是串連的範例:

SELECT ('abc' + 'def');

以下為結果集:

------
abcdef

(1 row(s) affected)

以下查詢將前四個連絡人的名稱以姓氏、名字的順序顯示於 Moniker 資料行下方,並在姓氏後面加上逗號及空格。

USE AdventureWorks;
GO
SELECT LastName + ', ' + FirstName AS Moniker 
FROM Person.Contact
WHERE ContactID < 5;

以下為結果集:

Moniker
-------------------------
Achong, Gustavo
Abel, Catherine
Abercrombie, Kim
Acevedo, Humberto

(4 row(s) affected)

其他的資料類型,例如 datetimesmalldatetime,必須使用 CAST 轉換函數轉換成字元字串之後才能和字串串連。

USE AdventureWorks;
GO
SELECT 'The due date is ' + CAST(DueDate AS varchar(128))
FROM Sales.SalesOrderHeader
WHERE SalesOrderID = 43659;
GO

以下為結果集:

---------------------------------------
The due date is Jul 13 2001 12:00AM

(1 row(s) affected)

空白字串 ('') 的驗算結果為一個空格:

SELECT 'abc' + '' + 'def'

以下為結果集:

-------
abcdef

(1 row(s) affected)
ms175524.note(zh-tw,SQL.90).gif附註:
空白字串 ('') 解譯成空白字元或空字元是由 sp_dbcmptlevel 的相容性層級設定值來決定。對於此範例而言,如果 sp_dbcmptlevel 為 65,空常值便視為單一的空白。

當兩個輸入字串有相同的定序,輸出字串會具有與輸入字串相同的定序。如果輸入字串有不同的定序,定序優先順序的規則會決定輸出字串的定序。您也可以使用 COLLATE 子句來指派特定的定序。

請參閱

其他資源

COLLATE (Transact-SQL)
定序優先順序 (Transact-SQL)
運算子 (Transact-SQL)
sp_dbcmptlevel (Transact-SQL)
+ (字串串連) (Transact-SQL)

說明及資訊

取得 SQL Server 2005 協助