用户自定义函数

用户自定义函数(UDF,user-defined function)的目的是要封装计算的逻辑处理,有可能须要基于输入的参数,并返回结果。函数

SQL Server 支持两种用户定义函数:标量UDF和表值UDF。标量UDF只返回单个数据值。而表值UDF则返回一个表。使用UDF 的优势之一是能够在查询中集成UDF。对于查询中返回单个值的表达式,在其出现的位置上,也可以使用标量UDF(例如,在SELECT列表中)。表值UDF只能在查询的FROM子句中出现。io

CREATE FUNCTION dbo.fn_ageevent

(function

  @birthdate AS DATETIME,date

  @eventdate AS DATETIME数据

)查询

RETURNS INTdb

AS参数

BEGIN封装

  RETURN

    DATEDIFF(year,@birthdate,@eventdate)

      - CASE WHEN 100*MONTH(@eventdate)+DAY(@eventdate)

        < 100* MONTH(@birthdate) + DAY(@birthdate)

      THEN 1 ELSE 0

    END

END

相关文章
相关标签/搜索