sql2005中 表值函数是啥

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql2005中 表值函数是啥相关的知识,希望对你有一定的参考价值。

那么标量函数呢?

表值函数是数据库中一种较为特殊的函数类型,它的返回值不再只是一个数值或一个字符串,而是一张数据表。也就是说表值函数返回的是 table 数据类型。对于内联表值函数,没有函数主体;表是单个 SELECT 语句的结果集。使用表值函数的时候,把函数直接当成是表或视图使用,表值函数的参数传入方法与标量函数没有区别。追问

内联表值函数,没有函数主体
有外联的吗?
请问可否是一个外联表值函数跟一个外联表值函数示例

追答

说了这么多,又不是没解释清楚,结果连个推荐答案都排不上,唉,知道咋能这样咧?!

参考技术A 表值函数是指返回结果是一个二维表的函数。你可以将表函数放在查询的from子句中,当做一个表或者视图使用。 参考技术B 表值函数就是你写的那个函数所得到的结果集是一张表;标量函数主要是取值。 参考技术C 就是一个返回值是一个表函数,函数内部可以像存储过程一样编写
最后要返回一个表

sql [sql]表值函数示例

SELECT @AllPlayersCount = COUNT([AP].[PlayerGUID]) FROM [dbo].[func_GetAllPlayers](@PollID) AS [AP]
CREATE FUNCTION [dbo].[func_GetAllPlayers]
(
  @PollID INT
)
RETURNS TABLE
AS
RETURN
(
  SELECT
    DISTINCT [MR].[PlayerGUID]
  FROM
    [MatchupResults] AS [MR]
    INNER JOIN [MatchupItems] AS [MI] ON [MI].[ID] = [MR].[SelectedID]
  WHERE 
    [MI].[PollID] = @PollID	
)

以上是关于sql2005中 表值函数是啥的主要内容,如果未能解决你的问题,请参考以下文章

sqlserver2005 表值函数

SQL 2005 - 表值函数编译正常,但选择时在 .. 附近抛出不正确的语法

通过在 SQL Server 2000 中传递变量参数来加入表值函数

使用 SQL Server 2005 完成 SQL 代码的好工具是啥? [关闭]

sql 2005 聚合函数

SQL Server 2005 上的“警告:没有看到 LOP_CKPT_END”消息是啥意思?