标量UDF
create function getavgcust(@customerid int )
returns money
as
begin
declare @amount money
set @amount=0
select @amount=avg(totaldue)
from sales.salesorderheader
where (customerid=@customerid)
return isnull(@amount,0)
end
调用该函数
print dbo.getavgcust(23)
错误提示:消息 208,级别 16,状态 1,第 2 行
对象名 'sales.salesorderheader' 无效。请问这样写有什么问题吗?
create function getavgcust(@customerid int )
returns money
as
begin
declare @amount money
set @amount=0
select @amount=avg(totaldue)
from sales.salesorderheader
where (customerid=@customerid)
return isnull(@amount,0)
end
调用该函数
print dbo.getavgcust(23)
错误提示:消息 208,级别 16,状态 1,第 2 行
对象名 'sales.salesorderheader' 无效。请问这样写有什么问题吗?
user AdventureWorks
gocreate function getavgcust(@customerid int )
returns money
as
begin
declare @amount money
select @amount=avg(totaldue)
from sales.salesorderheader
where (customerid=@customerid)
return isnull(@amount,0)
end select dbo.getavgcust(23)
---------------------
15553.0575(1 行受影响)
--如果是数据库名,应该是sales.dbo.salesorderheader
挑个小毛病
use AdventureWorks
go
create function getavgcust(@customerid int )
returns money
as
begin
declare @amount money
set @amount=0
select @amount=avg(totaldue)
from sales.salesorderheader
where (customerid=@customerid)
return isnull(@amount,0)
end print dbo.getavgcust(23)
go
create function getavgcust(@customerid int )
returns money
as
begin
。
use adventureworks
go
print dbo.ufngetstock(2)提示:消息 208,级别 16,状态 1,第 1 行
对象名 'dbo.ufngetstock' 无效。
有人知道到底是我哪儿弄的不对吗》?