请教一个sqlserver2005的函数返回表值的问题
create function get_name(@id int)
returns varchar(1000)
as
begin
declare @str varchar(1000)
set @str= ' '
select @str=GivenName+ ', '+FamilyName from Patients where PatientNum=@id
return @str
end
这是返回一个值,如果我想返回GivenName和FamilyName 两列又该如何写呢?
实在太菜,作业说要用inline table valued 函数
比如通过这样select * from get_name (9) order by id 得到第9行的记录,多谢啊
------解决方案--------------------CREATE FUNCTION get_names (@id int)
RETURNS TABLE
AS
RETURN
(
SELECT GivenName,FamilyName from Patients where PatientNum=@id
);
GO
select * from dbo.get_names(1001)