valores tabla procedimientos linea funciones ejemplos con basicas almacenados agregadas sql sql-server sql-server-2008 tsql sql-server-2012

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'', '''', ''''