聚合函数和自定义函数有什么区别?

解决方案 »

  1.   

    聚合函数用于库表数据统计,如: sum, count, avg, ..
    自定义函数由开发者编写,满足业务需求,可在多种场景应用。
      

  2.   

    楼主现在接触的还是少,等你渐渐的接触多了就知道怎么回事了
    聚合多数用于统计上的,如AVG,SUM,COUNT等等
    自定义函数是为了实现你要的某一个功能而写的,主要是为了把问题整体分解,并且实现代码复用
      

  3.   

    聚合多数首先是系统自带的函数,如AVG,SUM,COUNT等等
    自定义函数是为了实现你要的某一个功能而写的,主要是为了实现代码复用 
      

  4.   

    自定义函数就是自己创建的函数.
    sql 2005也可自定义聚合函数.
      

  5.   

    除了一个是系统函数,一个是自定义函数的区别外,他们在使用上有什么区别吗?例如:有一个自定义函数和一个table如下:
    create function myFunction(@parm nvarchar(50)) returns decimal(20,8)
    as 
    begin
      declare @returnVal decimal(20, 8)
      select @returnVal = sum(field2) from table where field1 = @parm
      return @returnVal
    end--talbe1格式如下:
    table(field1 nvarchar(50), field2 int, ... , field10)
    那么该下面的语句是否含义相等呢?--Use sum
    select sum(field2) from table1 group by field1--Use myFunction
    select myFunction(field1) from table1 group by field1主要的问题实际上是想问,自定义函数和聚合函数在使用上语法上有什么区别吗?
      

  6.   

    myFunction是标量函数,怎么没有所有者?
      

  7.   

    漏写了...
    所有者dbo...不太懂……
    自定义函数是不是在select查询的时候参数传不进去的?
      

  8.   

    --Use myFunction
    select myFunction(field1) from table1 group by field1
    ----------------
    这样用不行吧。
    因为你用到group,分组了就只能用聚合函数。
      

  9.   

    不行
    聚集函数必须用GROUP BY,是对本表(或连接表,下同)一批记录的数据进行计算
    自定义函数一定不能用GROUP BY,是对本表一条记录的数据进行计算。
      

  10.   

    聚集函数必须用GROUP   BY,是对本表(或连接表,下同)一批记录的数据进行计算 
    ====================================================
    不一定吧?
      

  11.   

    http://blog.csdn.net/zjcxc/archive/2004/07/21/47300.aspx
    查了下,邹老大写过这方面文章,不过‘自定义函数一定不能用GROUP   BY’在sqlserver2005已解决了