zoukankan      html  css  js  c++  java
  • Create function

    -- =============================================
    -- Create inline function (IF)
    -- =============================================
    IF EXISTS (SELECT *
           FROM   sysobjects
           WHERE  name = N'<inline_function_name, sysname, test_function>')
        DROP FUNCTION <inline_function_name, sysname, test_function>
    GO

    CREATE FUNCTION <inline_function_name, sysname, test_function>
        (<@param1, sysname, @p1> <data_type_for_param1, , int>,
         <@param2, sysname, @p2> <data_type_for_param2, , char>)
    RETURNS TABLE
    AS
        RETURN SELECT   @p1 AS c1,
                @p2 AS c2
    GO

    -- =============================================
    -- Example to execute function
    -- =============================================
    SELECT *
    FROM <owner, , dbo>.<inline_function_name, sysname, test_function>
        (<value_for_@param1, , 1>,
         <value_for_@param2, , 'a'>)
    GO

    -- =============================================
    -- Create scalar function (FN)
    -- =============================================
    IF EXISTS (SELECT *
           FROM   sysobjects
           WHERE  name = N'<scalar_function_name, sysname, test_function>')
        DROP FUNCTION <scalar_function_name, sysname, test_function>
    GO

    CREATE FUNCTION <scalar_function_name, sysname, test_function>
        (<@param1, sysname, @p1> <data_type_for_param1, , int>,
         <@param2, sysname, @p2> <data_type_for_param2, , int>)
    RETURNS <function_data_type, ,int>
    AS
    BEGIN
        <function_body, , RETURN @p1 + @p2 >
    --    eg.
    --    DECLARE @sum AS int
    --    SELECT @sum = @p1 + @P2
    --    RETURN @sum
    END
    GO

    -- =============================================
    -- Example to execute function
    -- =============================================
    SELECT <owner, , dbo>.<scalar_function_name, sysname, test_function>
        (<value_for_@param1, , 1>,
         <value_for_@param2, , 2>)
    GO

    -- =============================================
    -- Create table function (TF)
    -- =============================================
    IF EXISTS (SELECT *
           FROM   sysobjects
           WHERE  name = N'<table_function_name, sysname, test_function>')
        DROP FUNCTION <table_function_name, sysname, test_function>
    GO

    CREATE FUNCTION <table_function_name, sysname, test_function>
        (<@param1, sysname, @p1> <data_type_for_param1, , int>,
         <@param2, sysname, @p2> <data_type_for_param2, , char>)
    RETURNS <@table_variable_name, sysname, @table_var> TABLE
        (<column_1, sysname, c1> <data_type_for_column1, , int>,
         <column_2, sysname, c2> <data_type_for_column2, , int>)
    AS
    BEGIN
        INSERT <@table_variable_name, sysname, @table_var>
        SELECT 1, 2
        RETURN
    END
    GO

    -- =============================================
    -- Example to execute function
    -- =============================================
    SELECT * FROM <owner, , dbo>.<table_function_name, sysname, test_function>
        (<value_for_@param1, , 1>,
         <value_for_@param2, , 2>)
    GO

  • 相关阅读:
    树莓派更新失败【sudo rpi-update】
    树莓派连接显示器没反应
    Linux命令
    Ansys Fluent报错:an error or interrupt occurred while reading the journal file
    Ansys Fluent从cmd命令行中打开后无法编译UDF【解决】
    Ansys Fluent中动网格运动时,网格被挤压和拉伸,不能及时重画网格而报错【解决】
    ANSYS Fluent中动网格里Event(事件)选项为灰色不可选【解决】
    ANSYS ICEM导入step模型报错【解决】
    win10关闭任务栏程序最近显示
    MATLAB %% 不分节
  • 原文地址:https://www.cnblogs.com/mingyongcheng/p/1995252.html
Copyright © 2011-2022 走看看