SQL Server - Problema con IN

 
Vista:
sin imagen de perfil

Problema con IN

Publicado por Alfredo (1 intervención) el 25/09/2014 20:45:10
Buenos dias, lo que pasa es que tengo un procedure que requiere de 1 parametro varchar..... en la consulta del sp en el where yo tengo

SELECT * FROM Tabla WHERE codigo IN (@parametro)

yo le asigno valor al parametro = '"001, 002, 003, 004'"

pero cuando ejecuto el procedure

EXEC sp_cargar '"001, 002, 003, 004'"

me toma el parametro como una cadena sola y lo que quiero esque en la consulta se refleje asy cuando yo ejecute el sp

SELECT * FROM Tabla WHERE codigo IN ('001", "002", "003", "004")

pero me lo esta reflejando asy

SELECT * FROM Tabla WHERE codigo IN ("'001, 002, 003, 004")

me toma el parametro como si fuera una sola cadena,,, alguien sabe como puedo corregir esto??



Saludos!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

Problema con IN

Publicado por Isaias (4558 intervenciones) el 25/09/2014 21:26:38
Debes utilizar QUERY DINAMICO, con la observación del uso de los índices:

DECLARE @SQLScript NVARCHAR(50)
SET @SQLScript = N'SELECT * FROM Tabla WHERE codigo IN (' + @parámetro +')'
EXEC sp_executesql @SQLScript
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar