函数类型
函数有很多种分类方式,以下各小节的说明有助于了解函数运作方式的差异。
确定性与非确定性函数
函数可以是确定性的(deterministic)或非确定性的(nondeterministic)。如果给确定性函数相同的输入值,一定会返回相同的结果;而每次调用非确定性函数时,即使提供相同的输入值,也会返回不同的结果。
为什么给定输入永远返回相同输出很重要? 因为这攸关函数在视图、用户自定义函数及存储过程中如何运用。各种实现的限制各有不同,但这些对象的定义代码中有时候只许放置确定性函数。例如,SQL Server可以在字段表达式上创建索引,只要表达式不含非确定性函数即可。各平台的规定与限制各异,所以使用 ...... (共591字) [阅读本文]>>