Hola, Tengo un store procedure, en el cual tengo una instruccion
where
Optimas.Codigo in (@codigo) <-Los codigos tienen q ser numericos ya que asi eta definiada esa columna, como se ve es una consulta where para ingresar varios valores numericos pero nose como ya que no me lo permite, lo pase a varchar y ni aun asi. Les muestro mi store:
Código SQL:
Ver originalSET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Franco Luis Roberto>
-- Create date: <05-Sep-2012>
-- Description: <Show information of all lines,>
-- =============================================
ALTER PROCEDURE Report_All_Lines
@codigo VARCHAR(500),
@StartDate Datetime,
@EndDate Datetime
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
SELECT dbo.Optimas.Linea, dbo.pesos.Peso,dbo.htargets.Target, dbo.HTargets.Marca, dbo.pesos.Vaso, dbo.Optimas.Tubo, dbo.pesos.Hora
FROM pesos
INNER JOIN Optimas ON optimas.codigo = pesos.codoptima
INNER JOIN htargets ON optimas.codigo = htargets.codoptima
WHERE
optimas.codigo IN(@codigo)
AND
dbo.pesos.fecha >=@StartDate AND dbo.pesos.fecha <=@EndDate
AND
dbo.htargets.Fecha >=@StartDate AND dbo.htargets.fecha <=@EndDate
END
GO
Si lo ejecuto asi:
Código SQL:
Ver originalEXEC Report_All_Lines '99','9/3/2012 11:00 AM','9/3/2012 12:00 PM'
Si me muestra datos, pero si le paso 2 parametros en codigo no me deja:
Código SQL:
Ver originalEXEC Report_All_Lines '99,84','9/3/2012 11:00 AM','9/3/2012 12:00 PM'
Código:
Msg 245, Level 16, State 1, Procedure Report_All_Lines, Line 19
Conversion failed when converting the varchar value '99,84' to data type int
.
Pueden por favor decirme si hay alguna manera de pasarle varios parametros sin la necesidad de tener que cambiar el tipo de dato de la columna codigo?