Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

SQL verwendet kommagetrennte Werte mit IN-Klausel

Hier ist eine workaround Ich habe herausgefunden, was Sie erreichen wollen

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

Dies ruft Ihre durch Kommas getrennte Liste ab und vergleicht sie mit den IDs (die wie folgt dargestellt werden:',1,' , ',2,' etc) in der Tabelle mit LIKE