用于 SQL Server 的 .NET Framework 数据提供程序(SqlClient)提供 String
函数,该函数对输入 String
执行操作并返回 String
或数值结果。 这些函数位于 SqlServer 命名空间中,使用 SqlClient 时可用。 提供程序的命名空间属性允许 Entity Framework 发现此提供程序用于特定构造(如类型和函数)的前缀。
下表显示了 SqlClient String
函数。
功能 | DESCRIPTION |
---|---|
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)类型或二进制类型的表达式。expression2 :用于搜索指定序列的表达式(通常是列)。 表达式可以是 String(ASCII 或 Unicode)类型或二进制类型的表达式。start_location :(可选)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 类型的有效表达式。返回值 String 。示例 SqlServer.LOWER('AbB') |
LTRIM(expression) |
删除前导空格后返回表达式 String 。论点 expression :String 类型的任何有效表达式。返回值 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_expression : Int64 (在 SQL Server 2000 中不受支持)或 Int32 。返回值 Unicode 或 ASCII String 类型。示例 SqlServer.REPLICATE('aa',2) |
REVERSE(expression) |
返回 Unicode 或 ASCII 字符串,其字符位置与输入字符串相反。 论点 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_expression :Int64 (在 SQL Server 2000 中未返回)或 Int32 指示空格数。返回值 ASCII String 。示例 SqlServer.SPACE(2) |
STR(float_expression [, length [, decimal]]) |
返回从数值数据转换而成的 ASCII String 。论点 float _expression :具有小数点的近似数值 (Double ) 数据类型的表达式。length :(可选)一个表示总长度的 Int32 。 这包括小数点、符号、数字和空格。 默认值是10。decimal :(可选)一个 Int32 ,表示小数点右侧位数。 小数必须小于或等于 16。 如果小数大于 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 指定开始删除和插入的位置的值。length :一个 Int64 (未在 SQL Server 2000 中返回)或 Int32 指定要删除的字符数的值。str_expression_to_insert :Unicode 或 ASCII String 。返回值 Unicode 或 ASCII String 。示例 SqlServer.STUFF('abcd', 2, 2, 'zz') |
SUBSTRING(str_expression, start, length) |
返回 String 表达式的部分。论点 str_expression :String (ASCII 或 Unicode)类型或 Binary 类型的表达式。start :Int64 (在 SQL Server 2000 中未返回)或Int32 指定子字符串的开始位置。 1 引用字符串中的第一个字符。length : 一个Int64 (在 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)。