SQL Server 标量函数乃何物?

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

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

呵呵 再见!

posted @ 2013-10-07 18:12  上帝是代码  阅读(178)  评论(0)    收藏  举报