如何命名 UDF 的参数?

Posted

技术标签:

【中文标题】如何命名 UDF 的参数?【英文标题】:How to name arguments to a UDF? 【发布时间】:2011-06-13 19:42:21 【问题描述】:

我正在调用用户定义函数 (UDF)。我希望能够命名参数(就像您可以使用存储过程一样)以便于阅读(并减少错误),例如:

SELECT * FROM CalculateSettlementSheet(7, 2)

会变成

SELECT * FROM CalculateSettlementSheet(@BankID = 2, @UserID = 7)

当我尝试它时,我收到错误消息:

Msg 137, Level 15, State 2, Line 1
Must declare the variable '@BankID'.

可能吗?

【问题讨论】:

【参考方案1】:

不可能。

你能做的最好的就是传递变量。

DECLARE @BankID INT
SET @BankID = 2

DECLARE @UserID INT
SET @UserID = 2

SELECT * FROM CalculateSettlementSheet(@BankID, @UserID)

【讨论】:

以上是关于如何命名 UDF 的参数?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 withColumn 将额外的参数传递给 UDF

Java代码如何向Spark注册无参数UDF

如何在 Spark 中使用 Timestamp/Date 类型的参数创建 UDF

如何从 UDF 参数提供 SELECT 语句的 FROM 子句

Java Spark-如何以多列作为参数调用UDF

如何在 VBA Excel UDF 参数中使用比较运算符?