我正在玩一些代码,并意识到可以将参数覆盖为t-sql函数。即,
create function someFn(@date date) as
begin
if @date is null set @date = getdate()
如果参数为null,将@date设置为今天的日期。
这似乎只有在t-sql将其参数视为引用而不是值时才有意义。我意识到我实际上并不知道t-sql规则对于这样的情况是什么,并且希望有人可以详细说明这里发生了什么。 (我永远不会记得看到任何有关t-sql代码的参考讨论的实际情况......)
答案 0 :(得分:1)
您在这里工作的@date
是您的功能的本地。您将更改函数中的值,但不会影响调用代码中的值。
答案 1 :(得分:0)
函数必须使用返回值/类型声明,最后一个语句必须是return语句。如果你的最后一个语句返回@date,那么将返回Getdate()值。