我被迫在这个函数中放一个@noparameter varchar(1)= null?如何创建一个函数来返回没有参数的表!
ALTER FUNCTION [dbo].[DropDownIndividuals](@noparameter varchar(1)=null)
RETURNS
    @IndividualsList TABLE(
          Case_Number VARCHAR(11)
         ,LastName    VARCHAR(100)
         ,FirstName   VARCHAR(100)
         ,Midlename   VARCHAR(100)
         ,FullName    VARCHAR(100) 
        )
AS  
BEGIN
       INSERT INTO @IndividualsList
       SELECT DISTINCT
       cast(Case_Number as varchar(10))as Case_Number
      ,[Lastname]
      ,[Firstname]
      ,[Middlename]
      ,rtrim([Lastname]+ ' '+ [Firstname]) as FullName
      FROM [MHMODSSQL1P].[ODS].[dbo].[Contact]
      WHERE [LastName] is not null and [FirstName] is not null
      UNION ALL SELECT null,null,null,null,null
      ORDER BY [LastName]
      RETURN 
END;
    FUNCTION [dbo].[DropDownIndividuals]()
您可以使用open和close括号来定义没有参数的函数,假设您使用的是SQL Server.
你应该能够用这样的东西来做到这一点:
ALTER FUNCTION [dbo].[DropDownIndividuals]()
但由于表值函数本质上是一个参数化视图,因此您不妨只使用视图而不是不带参数的 TVF:
CREATE VIEW [dbo].[DropDownIndividuals]
AS
SELECT -- etc