共用方式為


字串函式

.NET Framework Data Provider for SQL Server (SqlClient) 提供 String 對輸入 String 執行作業並傳回 String 或 數值結果的函式。 這些函式位於 SqlServer 命名空間中,您可以在使用 SqlClient 時使用。 提供者的命名空間屬性可讓 Entity Framework 探索此提供者用於特定建構的前置詞,例如類型和函式。

下表顯示 SqlClient String 函式。

功能 說明
ASCII(expression) 傳回字串表示式最左邊字元的 ASCII 代碼值。

引數

expression:ASCII String 型別的任何有效表達式。

傳回值

一個Int32

範例

SqlServer.ASCII('A')
CHAR(expression) 將程式 Int32 代碼轉換成 ASCII 字串。

引數

expression:一個Int32

傳回值

ASCII String

範例

SqlServer.char(97)
CHARINDEX(expression1, expression2 [, start_location]) 傳回指定表示式在字元字串中的起始位置。

引數

expression1:表達式,其中包含要找到的字元序列。 表示式可以是 String (ASCII 或 Unicode) 類型或 Binary 類型的 。

expression2:表達式,通常是要搜尋指定序列的數據行。 表示式可以是 String (ASCII 或 Unicode) 類型或 Binary 類型的 。

start_location:(Optional)Int64(未在 SQL Server 2000 中傳回)或 Int32,表示在 expression2 中開始搜尋 expression1 的字元位置。 如果未指定start_location,則為負數或為零,則搜尋會從 expression2 的開頭開始。

傳回值

一個Int32

範例

SqlServer.CHARINDEX('h', 'habcdefgh', 2)
DIFFERENCE(expression, expression) SOUNDEX比較兩個字串的值,並評估兩個字串之間的相似性。

引數

ASCII 或 Unicode String 類型。 expression 可以是常數、變數或數據行。

傳回值

傳回Int32,代表兩個字元表達式之 SOUNDEX 值之間的差異。 範圍從 0 到 4。 0 表示弱式相似度或沒有相似性,4 表示強相似度或相同值。

範例

// The following example returns a DIFFERENCE value of 4,

//the least possible difference or the best match.

SqlServer.DIFFERENCE('Green','Greene');
LEFT(expression, count) 傳回字元字串的左邊部分,其中包含指定的字元數。

引數

expression:Unicode 或 ASCII 字串類型。 使用 CAST 函式明確轉換character_expression。

count: Int64(未在 SQL Server 2000 中傳回)或指定Int32型別,以決定將傳回 character_expression 的多少個字元。

傳回值

Unicode 或 ASCII String

範例

SqlServer.LEFT('SQL Server', 4)
LEN(expression) 傳回指定之 String 運算式中的字元數,不包括尾端空白。

引數

expression:一個表達式,類型為String(Unicode 或 ASCII)或Binary 類型

傳回值

一個Int32

範例

SqlServer.LEN('abcd')
LOWER(expression) String 大寫字元數據轉換成小寫之後,傳回表達式。

引數

expression:型別 String 的任何有效表達式。

傳回值

A String

範例

SqlServer.LOWER('AbB')
LTRIM(expression) 去除前置空格後,傳回String表達式。

引數

expression:型別 String 的任何有效表達式。

傳回值

A String

範例

SqlServer.LTRIM(' d')
NCHAR(expression) 傳回具有指定整數碼的 Unicode String ,如 Unicode 標準所定義。

引數

expression:一個Int32

傳回值

Unicode String

範例

SqlServer.NCHAR(65)
PATINDEX('%pattern%', expression) 傳回指定 String 表達式中第一次出現模式的起始位置。

引數

'%pattern%':ASCII 或 Unicode String 類型。 可以使用通配符;然而,模式前後必須有 % 字元(搜尋第一個或最後一個字元時除外)。

expression:用於搜尋指定模式的 ASCII 或 Unicode String

傳回值

一個Int32

範例

SqlServer.PATINDEX('abc', 'ab')
QUOTENAME('char_string' [, 'quote_char']) 傳回 Unicode String ,並加入分隔符,讓輸入字串成為有效的 SQL Server 2005 分隔標識符。

引數

char_string:Unicode String

quote_char:要當做分隔符使用的一個字元字串。 可以是單引號 (' )、左括弧或右括弧 ([ ] ),或雙引號 (“ )。 如果未 quote_char 指定,則會使用括號。

傳回值

Unicode String

範例

SqlServer.QUOTENAME('abc[]def')
REPLACE(expression1, expression2, expression3) 以另一個字元表示式取代字元表達式。

引數

expression1:要搜尋的字串表達式。 expression1 可以是 Unicode 或 ASCII 字串類型。

expression2:要找到的子字串。 expression2 可以是 Unicode 或 ASCII 字串類型。

expression3;替代字串。 expression3 可以是 Unicode 或 ASCII 字串類型。

範例

SqlServer.REPLACE('aabbcc', 'bc', 'zz')
REPLICATE(char_expression, int_expression) 將字元表達式重複指定的次數。

引數

char_expression:Unicode 或 ASCII String 類型。

int_expressionInt64 (SQL Server 2000 中不支援) 或 Int32

傳回值

Unicode 或 ASCII String 類型。

範例

SqlServer.REPLICATE('aa',2)
REVERSE(expression) 傳回 Unicode 或 ASCII String,其字元位置會反轉自輸入字串。

引數

expression:Unicode 或 ASCII String 類型。

傳回值

Unicode 或 ASCII String 類型。

範例

SqlServer.REVERSE('abcd')
RIGHT(char_expression, count) 傳回字元字串的右邊部分,其中包含指定的字元數。

引數

char_expression:Unicode 或 ASCII 字串類型。 使用 CAST 函式明確轉換character_expression。

count: Int64(未在 SQL Server 2000 中傳回)或指定Int32型別,以決定將傳回 character_expression 的多少個字元。

傳回值

ASCII String 類型。

範例

SqlServer.RIGHT('SQL Server', 6)
RTRIM(expression) 拿掉尾端空格之後,傳回 Unicode 或 ASCII 字串。

引數

expression:Unicode 或 ASCII String 類型。

傳回值

Unicode 或 ASCII String 類型。

範例

SqlServer.RTRIM(' d e ')
SOUNDEX(expression) 傳回四個字元 (SOUNDEX) 程式代碼,以評估兩個字串的相似度。參數

expression:Unicode 或 ASCII 字串類型。

傳回值

ASCII String。 四個字元 (SOUNDEX)代碼是一種用於評估兩個字串相似性的字串。

範例

Select SqlServer.SOUNDEX('Smith'), SqlServer.SOUNDEX('Smythe') FROM {1}

傳回

----- ----- S530 S530
SPACE(int_expression) 傳回由重複空格組成的 ASCII String

引數

int_expressionInt64(未在 SQL Server 2000 中傳回)或 Int32,表示空格數目。

傳回值

ASCII String

範例

SqlServer.SPACE(2)
STR(float_expression [, length [, decimal]]) 傳回由數值數據轉換而成的 ASCII String

引數

float _expression:具有小數點之近似數值 (Double) 數據類型的表達式。

length:(選擇性)指代表總長度的Int32。 這包括小數點、符號、數位和空格。 預設值為 10。

decimal:(optional) , Int32 表示小數點右邊的位數。 十進位必須小於或等於16。 如果 decimal 超過 16,結果會截斷為小數點右邊的 16 個位置。

傳回值

ASCII String

範例

SqlServer.STR(212.0)
STUFF(str_expression, start, length, str_expression_to_insert) 刪除指定的字元長度,並在字串表示式中指定的起點插入另一組字元。

引數

str_expression:Unicode 或 ASCII String

start: Int64 (未在 SQL Server 2000 中傳回)或Int32值,指定開始刪除和插入的位置。

lengthInt64Int32值(未在 SQL Server 2000 中傳回),指定要刪除的字元數。

str_expression_to_insert:Unicode 或 ASCII String

傳回值

Unicode 或 ASCII String

範例

SqlServer.STUFF('abcd', 2, 2, 'zz')
SUBSTRING(str_expression, start, length) 傳回表達式的 String 一部分。

引數

str_expressionString(ASCII 或 Unicode)型別或 Binary 型別的運算式。

startInt64(未在 SQL Server 2000 中傳回)或 Int32 用於指定子字串的起始位置。 1 是指字串中的第一個字元。

lengthInt64 (不會在 SQL Server 2000 中傳回)或 Int32,指定將返回表達式的字元數。

傳回值

String (ASCII 或 Unicode) 類型或Binary類型。

範例

SqlServer.SUBSTRING('abcd', 2, 2)
UNICODE(expression) 針對輸入表達式的第一個字元,傳回 Unicode 標準所定義的整數值。

引數

expression:Unicode String

傳回值

一個Int32

範例

SqlServer.UNICODE('a')
UPPER(expression) String 小寫字元數據轉換成大寫之後,傳回表達式。

引數

expression:ASCII 或 Unicode 字串類型的運算式。

傳回值

ASCII 或 Unicode String 類型。

範例

SqlServer.UPPER('AbB')

如需 SqlClient 支援之 String 函式的詳細資訊,請參閱 字串函式 (Transact-SQL)

另請參閱