【问题标题】:Implementing User-Defined Function with expression用表达式实现用户定义的函数
【发布时间】:2017-12-03 12:23:55
【问题描述】:

是否可以在SQL Server中实现具有参数表达式且返回类型与表达式相同的用户定义函数?

类似于https://docs.microsoft.com/en-us/sql/t-sql/language-elements/nullif-transact-sql

基本上,我希望实现 NULLIF 函数的扩展版本。

【问题讨论】:

  • 你可以使用sql_variant,否则我认为你不能使用动态类型。
  • sql_variant 通常并没有真正的帮助,因为如果您想对其执行任何进一步的操作,您需要将其转换为基本类型。

标签: sql sql-server tsql user-defined-functions


【解决方案1】:

没有。

这是只有内置函数才有的能力。

创建标量函数的语法要求

RETURNS return_data_type 

这意味着您必须在设计时选择特定的返回数据类型。你不能让它从传入的数据类型中推断出来。

【讨论】:

    猜你喜欢
    • 2020-04-17
    • 2017-04-03
    • 2012-08-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多