dav*_*ine 2 sql sql-server sql-server-2008
我对每个国家/地区使用以下查询.如何创建一个函数来生成传递给它的每个国家/地区的平均值?
-- pepsi drink database
select avg(monthly_sales)
from world_sales
where product name like '%juice%'
and country = 'germany' -- this can be japan, usa, china etc
Run Code Online (Sandbox Code Playgroud)
create function dbo.getAverageMonthlySaleForCountry(@country varchar(100))
returns decimal(20,4)
as
begin
return (
select avg(monthly_sales)
from world_sales
where product name like '%juice%'
and country = @country
)
end
GO
Run Code Online (Sandbox Code Playgroud)
但请注意,这样的SCALAR函数在性能方面的用途有限(读:它对性能的影响非常大).小心使用.