Transact-SQL 参考

函数

Transact-SQL 编程语言提供三种函数:

函数确定性

SQL Server 2000 的内置函数可以是确定的也可以是不确定的。如果任何时候用一组特定的输入值调用内置函数,返回的结果总是相同的,则这些内置函数为确定的。如果每次调用内置函数时即使用的是相同的一组特定输入值,返回的结果不总是相同的,则这些内置函数为不确定的。

函数的确定性将规定函数是否可用在索引计算列和索引视图中。索引扫描必须始终生成一致的结果。因而,只有确定性函数才能用来定义将编制索引的计算列和视图。

配置、游标、元数据、安全和系统统计函数不具有确定性。此外,下列内置函数也始终为不确定的:

@@ERROR FORMATMESSAGE NEWID
IDENTITY GETANSINULL PERMISSIONS
@@ROWCOUNT GETDATE SESSION_USER
@@TRANCOUNT HOST_ID STATS_DATE
APP_NAME HOST_NAME SYSTEM_USER
CURRENT_TIMESTAMP IDENT_INCR TEXTPTR
CURRENT_USER IDENT_SEED TEXTVALID
DATENAME IDENTITY USER_NAME

函数排序规则

使用字符串输入并返回字符串输出的函数对输出使用输入字符串的排序规则。

使用非字符输入并返回字符串的函数对输出使用当前数据库的默认排序规则。

使用多个字符串输入并返回字符串的函数,使用排序规则的优先顺序规则设置输出字符串的排序规则。有关更多信息,请参见排序规则的优先顺序

请参见

CREATE FUNCTION

确定性函数和非确定性函数

用户定义函数