你的问题中没有相应的表结构和数据示例,不能验证,无法提供可直接运行的实例。
在你的问题中,涉及只涉及到了自定义函数的实现形式和常用的聚合函数,你可以通过数据库本身的帮助文档获取相应的信息。
我在这里就第一个问题给你一个参照的示例,希望对你会有帮助!
create function fn_GetMax() returns varchar(50) as begin declare @MaxAge currency, --最大年龄 @Name varchar(50) --最大年龄学生的姓名 --计算最大年龄 select @MaxAge = max(age) from stu --查询年龄等于最大年龄的人的姓名 select @Name = Name from stu where age = @MaxAge --返回姓名 return @Name end
create function fn_GetMax()
returns @name TABLE (maxagename NVARCHAR(50))
as
begin
declare
@MaxAge currency, --最大年龄
@Name varchar(50) --最大年龄学生的姓名
INSERT @name
select Name
from stu
WHERE age = (SELECT MAX(age) FROM stu)
return
end