喝口水,耸耸肩,捏捏手,点点鼠标…

闲话少叙! 我们这次讨论的是 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

呵呵 再见!