Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Предайте множество стойности в един параметър в SQL Server

Не изпълнявате своята динамична заявка, опитайте това:

CREATE PROCEDURE [dbo].[sp_Sample] @param1 VARCHAR(100)
AS
    DECLARE @Sql NVARCHAR(MAX)

    SET @param1 = Replace(@param1, ',', ''',''')
    SET @Sql = 'select * from tblSample where col1 IN ('''
               + @param1 + ''')'
    --PRINT @Sql 
    exec sp_executesql @Sql
GO 

Exec sp_Sample '1001'
GO

Забележка:PRINT ще отпечата низа на заявката, ще го декоментира и ще провери вашата заявка.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да форматирате дата и час в SQL SERVER

  2. SQL Server - Автоматично увеличаване, което позволява изрази UPDATE

  3. Трябва ли MAMP да върне ::1 като IP на localhost?

  4. CASE (съдържа), а не равенство

  5. set @var =exec stored_procedure