Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

SQL używa wartości oddzielonych przecinkami z klauzulą ​​IN

Oto workaround Odkryłem, że robię to, co chcesz osiągnąć

CREATE Procedure [dbo].[sp_getUserRoles](
   @pGroupIDs varchar(50)
    )
     As
    BEGIN
        SELECT * FROM CheckList_Groups Where (',' + @pGroupIDs +',' LIKE '%,' + CONVERT(VARCHAR, id) + ',%')
   End

To pobiera twoją listę rozdzielaną przecinkami i porównuje ją z identyfikatorami (które są reprezentowane w taki sposób, jak ',1,' , ',2,' itp) w tabeli za pomocą LIKE



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Najszybszy sposób na znalezienie przestarzałych funkcji, które są nadal używane w wystąpieniu programu SQL Server (przykład T-SQL)

  2. Dlaczego tabela docelowa instrukcji MERGE nie może mieć włączonych reguł?

  3. Przechwytywanie wielu komunikatów o błędach z jednej instrukcji wewnątrz TRY CATCH

  4. Jak uniknąć zduplikowanych wartości dla INSERT w SQL?

  5. Wydajność SQL DELETE