喝口水,耸耸肩,捏捏手,点点鼠标…
闲话少叙! 我们这次讨论的是 SQLSERVER 中的自定义函数 —— 标量函数.
和上次讨论的表值函数方法一样,顾名思义,我们望文生义一下下…
上次讨论的表值函数返回的是一个表,标量函数是不是返回的是一个特定类型变量呢?
嘿嘿,我们猜对了,所谓的标量值函数,返回值正是一个标准的量(有数据类型,有值…).
首先我们来看看它的语法:
CREATE FUNCTION 函数名(参数列表)
RETURNS 返回类型
AS
BEGIN
函数体
END
GO
看得出写着非常爽是吧! 一眼就明白,我敢打赌有人看到这里就按捺不住了,再也没有往下滚动鼠标的想法,因为已经参透了其中的奥秘! 呵呵呵
尽管这样,我们还是往下来一个例子吧! 这对不大熟悉的朋友来说可能是需要的.
CREATE FUNCTION MYFUN (@NUMBER1 INT,@NUMBER2 INT) --两个 INT 类型参数
RETURNS INT -- 表示规定返回值为 INT 类型
AS
BEGIN
RETURN @NUMBER1 + @NUMBER2 -- 相加两个数,并返回
END
GO
值得一提的是,标量值函数的调用方法如下:
SELECT DBO.MYFUN()
或按照标准写法 [dbo].[MYFUN]()
这里不要把标量值函数的调用方法和表值函数的调用方法混淆了.
其实想想也能区分的,我们调用表值函数是这样的:
SELECT * FROM 函数名(参数)
而我们调用标量值函数是这样的:
SELECT 函数名(参数) --返回值是一个固定类型的单个值,所以可以简单的用 SELECT 来调用.
事就这么个事,当你理解后,你就会觉得世界是那么的美妙神奇,呵呵 .
好吧伙伴们! 现在就可以用它去做你想做的事了! 或者是解决你的一些问题了.
肚子饿了,吃饭去,感谢看过本篇文章的朋友,非常看些看到最后也没有 ctrl+w
呵呵 再见!