SQL Server /非确定性函数有何影响?

时间:2019-09-20 04:00:12

标签: sql-server

我读了很多关于确定性函数和非确定性函数的文章。有人可以解释确定性带来的好处或不确定性带来的影响吗?我了解确定性与非确定性之间的区别。但是我要寻找的是受不确定性影响的动作列表。我现在知道,计算列就是这样一种操作。但是还有更多吗?是否存在受不确定函数影响的所有内容的列表?

1 个答案:

答案 0 :(得分:0)

确定性函数是一种功能,如果您提供相同的输入,则始终获得相同的输出。将两个整数(2 + 3)相加的函数总是会给出相同的答案(5)。

SQL Server中的某些地方必须使用确定性函数。例如,如果使用函数定义表中的计算列,则不会出现以下情况:重新计算该列时,同一列和同一行的值将不同。

对于许多人来说,这会导致问题的地方就是使用诸如GETDATE()之类的函数。它总是返回不同的值,因此函数中有很多地方您无法使用它。