小编典典

在SQL中调用动态函数名称

sql

是否可以在SQL中使用动态名称调用函数?

例如:

SELECT functionid, (SELECT results FROM dbo.Function_*functionid*) AS results
FROM List_of_Functions

这将为表List_of_Functions中的每一行调用一个不同的函数。

还是我要解决所有这些错误?


阅读 161

收藏
2021-04-28

共1个答案

小编典典

您将需要构建(输入它,或者根据您的表动态地构建它)一条SQL语句,例如:

SELECT
    functionid
        ,CASE  functionid
            WHEN 1 THEN dbo.Function_1()
            WHEN 2 THEN dbo.Function_2()
            WHEN 3 THEN dbo.Function_3()
         END AS results
    FROM List_of_Functions

与其构建所有这些功能,不如构建一个功能并传递一个该功能可用于区分处理的值,这会更好吗?喜欢:

SELECT
    functionid
        ,dbo.Function(functionid) AS results
    FROM List_of_Functions_Parameters
2021-04-28