tabla - Pasar múltiples valores a un parámetro de una función en SQL
funciones sql server pdf (2)
Una forma de hacer eso que yo prefiero es crear un nuevo tipo de datos de tabla definido por el usuario.
CREATE TYPE [dbo].[IdList] AS TABLE(
[Id] [int] NULL
)
Entonces puede usar ese tipo de datos como uno de los parámetros
CREATE FUNCTION Getfunctionname
(
@UserIDs dbo.IdList READONLY,
@startdate INT,
@endtdate INT
)
RETURNS @ReturnTable TABLE
(
-- ReturnTable
)
AS
BEGIN
-- Query
RETURN
END
Hay función Getfunctionname(userid, startdate, enddate)
para devolver una tabla
Mi pregunta es ¿puedo pasar una variable con valores múltiples?
es decir
getfunctionname(@userid, startdate, enddate)
Donde el valor de variable @userid
es como
1
2
3
4
5
(en realidad usando la función split
dividiendo los valores de ser 1,2,3,4,5
)
Si puedo, por favor házmelo saber
Usa el concepto de CSV
CREATE FUNCTION [dbo].[uspGetNumbers]
userid,startdate,enddate // define your paramters the way you want
AS
BEGIN
// your code
JOIN dbo.fnSplit(@UserIDs, '','')
END
GO
Función de ejemplo:
SELECT [dbo].[uspGetNumbers] ''1,2,3,4,5'', '''', ''''